사용 방법
- CSV 또는 JSON을 입력창에 붙여 넣습니다. 예시 불러오기로 작은 CSV를 써 볼 수 있습니다.
- CSV → JSON 또는 JSON → CSV를 누릅니다. 쉼표가 아니면 구분자를 고르고, 첫 줄은 열 이름, 숫자와 true/false 변환 같은 옵션을 선택합니다.
- 결과를 복사하거나, 결과를 입력으로 사용을 눌러 다시 변환해 왕복이 맞는지 확인합니다.
예시
name,age,note Ada,36,"likes, commas" Alan,41,"two lines"
→ [
{ "name": "Ada", "age": "36", "note": "likes, commas" },
{ "name": "Alan", "age": "41", "note": "two\nlines" }
]따옴표로 감싼 필드에는 쉼표와 줄바꿈이 들어갈 수 있습니다. 여기서는 줄여서 보여 주며, 도구는 들여쓴 표준 JSON을 만듭니다.[{"a":1},{"b":2}]→ a,b 1, ,2JSON → CSV입니다. 키가 서로 다른 객체도 나타난 모든 키가 열이 되므로 줄이 맞습니다.
"숫자와 true/false 변환" 옵션을 켜고 a,b / 1,true 입력
→ [{"a": 1, "b": true}]옵션이 꺼져 있으면 값은 텍스트 "1"과 "true"로 남습니다.계산 방식
CSV는 오픈소스 Papa Parse 라이브러리가 읽습니다. 따옴표로 감싼 필드, 필드 안의 줄바꿈, 여러 구분자를 이해합니다. 첫 줄은 열 이름 옵션을 켜면 첫 행이 키가 되고 이후 각 행이 객체가 됩니다. 끄면 각 행이 목록이 됩니다.
머리글보다 필드가 많거나 적은 행도 변환은 되며, 그런 행의 처음 몇 개를 경고로 보여 주니 확인하세요. 닫히지 않은 따옴표는 나머지 텍스트를 믿을 수 없게 만들기 때문에 변환을 멈춥니다.
JSON → CSV에서는 어느 객체에든 나타난 모든 키가 처음 나타난 순서대로 열이 됩니다. 없는 값은 빈 셀이 되고, 행 사이에는 일반 줄바꿈을 씁니다.
출처
자주 묻는 질문
- 필드 안의 쉼표와 줄바꿈은 어떻게 처리하나요?
- 구분자, 따옴표, 줄바꿈이 들어 있는 필드는 큰따옴표로 감싸고, 그 안의 큰따옴표는 두 번 씁니다. RFC 4180의 규칙이며 읽을 때와 쓸 때 모두 이를 따릅니다.
- JSON에서 숫자가 텍스트로 나오는 이유는 무엇인가요?
- CSV에는 자료형이 없어서 따로 요청하지 않으면 모든 값을 텍스트로 읽습니다. 숫자와 true/false 변환을 켜면 JSON 숫자와 불리언이 됩니다. 우편번호나 앞에 0이 붙은 ID처럼 적은 그대로 남아야 하는 값은 끄세요.
- 세미콜론으로 된 파일도 되나요?
- 네. 구분자는 자동으로 감지하지만 짧은 파일은 판단할 단서가 부족할 수 있으니, 결과가 이상하면 세미콜론(;)을 직접 고르세요. 지역에 따라 스프레드시트가 CSV를 세미콜론으로 저장하기도 합니다.
- 중첩된 JSON은 어떻게 되나요?
- CSV는 평평한 형식이라 중첩된 객체와 배열은 JSON 텍스트로 해당 셀에 들어갑니다. 열을 따로 나누려면 먼저 다른 도구로 풀어 주세요.
- 스프레드시트 수식 실행 방지 옵션은 무엇인가요?
- 스프레드시트는 =, +, -, @로 시작하는 셀을 수식으로 실행할 수 있어서, 데이터가 다른 사람에게서 온 경우 악용될 수 있습니다. 옵션을 켜면 그런 셀 앞에 작은따옴표를 붙여 텍스트로 보이게 합니다.
- 내 데이터가 업로드되나요?
- 아니요. 변환은 브라우저 안에서 실행됩니다.