CSV JSON 변환기: CSV ↔ JSON 양방향 변환

  • 무료
  • 가입 불필요
  • 브라우저에서 실행
  • 마지막 업데이트 2026-10-07
문제 신고

CSV를 붙여 넣으면 JSON 목록으로, JSON 목록을 붙여 넣으면 CSV로 바꿔 줍니다. 구분자와 형식은 직접 고를 수 있습니다.

입력한 내용은 브라우저 안에서만 처리되며 서버로 전송되지 않습니다.

사용 방법

  1. CSV 또는 JSON을 입력창에 붙여 넣습니다. 예시 불러오기로 작은 CSV를 써 볼 수 있습니다.
  2. CSV → JSON 또는 JSON → CSV를 누릅니다. 쉼표가 아니면 구분자를 고르고, 첫 줄은 열 이름, 숫자와 true/false 변환 같은 옵션을 선택합니다.
  3. 결과를 복사하거나, 결과를 입력으로 사용을 눌러 다시 변환해 왕복이 맞는지 확인합니다.

예시

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,
,2
JSON → 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 텍스트로 해당 셀에 들어갑니다. 열을 따로 나누려면 먼저 다른 도구로 풀어 주세요.
스프레드시트 수식 실행 방지 옵션은 무엇인가요?
스프레드시트는 =, +, -, @로 시작하는 셀을 수식으로 실행할 수 있어서, 데이터가 다른 사람에게서 온 경우 악용될 수 있습니다. 옵션을 켜면 그런 셀 앞에 작은따옴표를 붙여 텍스트로 보이게 합니다.
내 데이터가 업로드되나요?
아니요. 변환은 브라우저 안에서 실행됩니다.

마지막 업데이트: