CSV JSON 변환 (CSV ↔ JSON)

CSV를 붙여 넣거나 파일을 열면 JSON 배열로, JSON을 넣으면 엑셀에서 열리는 CSV로 바꿔 줍니다. 파일은 브라우저 안에서만 처리됩니다.

변환 방향
옵션

CSV JSON 변환 사용 방법

  1. 변환 방향(CSV → JSON 또는 JSON → CSV)을 고릅니다.
  2. 입력 칸에 내용을 붙여 넣거나 파일 열기로 .csv·.tsv·.json 파일을 불러옵니다. EUC-KR로 저장된 한글 CSV도 자동으로 인식합니다.
  3. 구분자는 보통 자동 감지로 충분합니다. 첫 줄이 열 제목이 아니라면 "첫 줄은 제목" 체크를 끕니다.
  4. 변환하기를 누른 뒤 결과를 복사하거나 파일로 저장합니다. CSV는 엑셀에서 한글이 깨지지 않도록 BOM이 붙은 UTF-8로 저장됩니다.

CSV를 JSON으로 바꾸면 어떤 모양이 되나요?

첫 줄을 제목으로 쓰면 각 행이 "열 제목": 값 형태의 객체가 되고, 전체는 객체의 배열이 됩니다.

CSVJSON 결과
이름,나이
김민수,31
[{"이름": "김민수", "나이": 31}]

"숫자 자동 변환"을 켜면 31처럼 숫자로만 된 칸은 숫자 형식으로, true·false는 불리언으로 바꿉니다. 단, 0으로 시작하는 값(우편번호 04524, 전화번호 010…)은 앞자리 0이 사라지지 않도록 문자열로 그대로 둡니다. 제목이 비어 있는 열은 "열3"처럼 이름을 붙이고, 같은 제목이 두 번 나오면 뒤쪽에 _2를 붙입니다.

JSON을 CSV(엑셀)로 바꿀 때의 규칙

  • 객체 배열이면 모든 객체에 나오는 키를 모아 열 제목으로 씁니다. 어떤 객체에 없는 키는 빈칸이 됩니다.
  • 한 단계 안쪽의 객체는 주소.도시처럼 점으로 이은 열로 펼칩니다. 더 깊은 값이나 배열은 JSON 문자열 그대로 한 칸에 넣습니다.
  • 배열의 배열([[1,2],[3,4]])은 제목 없이 행과 열로 그대로 옮깁니다.
  • 값에 쉼표, 큰따옴표, 줄바꿈이 있으면 RFC 4180 규칙에 따라 큰따옴표로 감싸고 내부 따옴표는 두 번 씁니다. 엑셀과 구글 시트가 이 규칙을 그대로 읽습니다.

엑셀에서 CSV 한글이 깨질 때 해결 방법

엑셀은 BOM(파일 앞의 보이지 않는 표시)이 없는 UTF-8 CSV를 열 때 한글을 깨진 글자로 보여 주는 경우가 많습니다. 툴집에서 저장한 CSV는 UTF-8 BOM을 붙여 저장하므로 더블클릭으로 열어도 한글이 정상으로 보입니다.

반대로 예전 엑셀에서 "CSV(쉼표로 분리)"로 저장한 파일은 EUC-KR(CP949)인 경우가 많습니다. 이 도구는 파일을 열 때 UTF-8로 읽을 수 없으면 자동으로 EUC-KR로 읽어서 한글이 깨지지 않습니다. 텍스트 파일의 인코딩 자체를 바꾸고 싶다면 텍스트 인코딩 변환 도구를 이용하세요.

엑셀에서 숫자가 1.23E+11처럼 바뀌거나 앞자리 0이 사라지는 것은 CSV 파일 문제가 아니라 엑셀이 열 때 자동으로 형식을 바꾸기 때문입니다. 이런 열은 엑셀의 "데이터 > 텍스트/CSV에서" 가져오기로 열 형식을 텍스트로 지정하면 그대로 유지됩니다.

자주 묻는 질문

탭으로 구분된 TSV 파일도 변환되나요?
네. 구분자 자동 감지가 쉼표·탭·세미콜론·세로선 중 가장 많이 쓰인 것을 고릅니다. 엑셀이나 구글 시트에서 표를 복사해 붙여 넣으면 탭 구분이 되는데, 이것도 바로 변환됩니다.
엑셀 파일(.xlsx)을 바로 넣을 수 있나요?
xlsx는 압축된 별도 형식이라 직접 읽지 못합니다. 엑셀에서 "다른 이름으로 저장 > CSV UTF-8"로 저장하거나, 표를 복사해 입력 칸에 붙여 넣어 주세요.
파일 크기 제한이 있나요?
정해진 제한은 없지만 브라우저 메모리로 처리하므로 수십 MB 이상은 느려질 수 있습니다. 큰 파일은 나눠서 변환하는 것을 권장합니다.
변환한 데이터가 서버에 저장되나요?
아니요. 파일 읽기와 변환은 모두 브라우저 안에서 이루어지며 서버로 전송되지 않습니다.

최종 업데이트: 2026-10-02