본문 바로가기

CSV to JSON 변환 완벽 가이드 - 무료 도구부터 코드 변환 방법까지

엑셀로 정리한 데이터를 웹 개발이나 API 연동을 위해 JSON으로 변환해야 할 때 막막하셨던 분들을 위해 무료 도구와 변환 코드를 정리했습니다.


CSV to JSON 변환 완벽 가이드 - 무료 도구부터 코드 변환 방법까지

업무 중 엑셀 파일을 받았는데 개발팀에서 JSON 형식으로 달라고 하면 난감할 때가 있습니다. CSV와 JSON은 둘 다 데이터를 저장하는 형식이지만 사용 방식이 완전히 다르기 때문에 변환 과정에서 데이터가 깨지거나 형식이 어긋나는 경우가 흔합니다. 한글이 ???로 표시되거나 0으로 시작하는 우편번호의 앞자리가 사라지는 경험을 해보신 분들도 많으실 겁니다.

여기서는 별도의 프로그램 설치 없이 사용할 수 있는 무료 변환 도구부터 직접 코드를 작성해 변환하는 방법까지 정리해드립니다. 데이터 양이 많거나 정기적으로 변환 작업이 필요한 경우에도 참고하실 수 있도록 실무에서 자주 쓰는 방식 위주로 소개합니다.

CSV와 JSON의 차이부터 정확히 이해하기

CSV는 Comma Separated Values의 약자로 콤마로 값을 구분하는 단순한 텍스트 파일입니다. 엑셀로 저장할 때 흔히 사용하는 포맷이며 표 형태의 데이터를 담기에 적합합니다. 반면 JSON은 JavaScript Object Notation의 약자로 키와 값의 쌍으로 데이터를 표현하는 형식입니다. 웹 API와 모바일 앱에서 데이터를 주고받을 때 사실상의 표준처럼 쓰입니다.

두 포맷의 가장 큰 차이는 계층 구조 표현 가능 여부입니다. CSV는 평면적인 표 구조만 표현할 수 있지만 JSON은 객체 안에 객체를 넣는 중첩 구조가 가능합니다. 따라서 단순 표 데이터는 변환이 쉽지만 복잡한 관계형 데이터는 별도의 가공이 필요합니다.

구분CSVJSON
구조평면 표 형태중첩 객체 가능
가독성엑셀에서 보기 좋음코드에서 다루기 좋음
파일 크기작음키 반복으로 큼
주 사용처리포트, 데이터 exportAPI, 설정 파일

무료 온라인 변환 도구 비교

가장 빠른 방법은 웹 기반 변환 사이트를 이용하는 것입니다. 파일을 업로드하거나 텍스트를 붙여 넣으면 즉시 결과가 나옵니다. 다만 회사 내부 데이터나 개인정보가 포함된 파일이라면 보안 정책을 먼저 확인해야 합니다.

  • ConvertCSV: 변환 옵션이 가장 다양하며 헤더 행 처리, 키 이름 변경, 들여쓰기 설정까지 세밀하게 조정할 수 있습니다.
  • CSVJSON: 인터페이스가 단순해 빠르게 결과를 얻을 수 있고 결과 미리보기가 깔끔합니다.
  • Mr. Data Converter: 결과 형식을 JSON, 객체 배열, 컬럼 배열 등 여러 형태로 선택할 수 있어 실무 활용도가 높습니다.
참고: 온라인 도구는 보통 브라우저에서 변환을 수행하지만 일부 사이트는 대용량 파일을 서버로 업로드하기도 합니다. 민감한 데이터는 반드시 로컬 변환 방식을 사용하시는 것이 안전합니다.

엑셀에서 JSON으로 직접 변환하는 방법

엑셀 365와 2019 이상 버전에서는 파워 쿼리를 이용해 JSON 파일을 만들 수 있습니다. 데이터 탭에서 가져오기 및 변환 기능을 활용하면 별도의 프로그램 없이도 변환이 가능합니다. 다만 이 방법은 단순 표 형태에만 적합하며 중첩 구조가 필요하면 후처리 작업이 별도로 필요합니다.

파워 쿼리 변환 순서

  1. 변환할 데이터 영역을 선택하고 표로 변환합니다.
  2. 데이터 탭에서 표/범위에서 가져오기를 선택합니다.
  3. 파워 쿼리 편집기에서 각 열의 데이터 형식을 적절히 지정합니다.
  4. 고급 편집기를 열어 Json.FromValue 함수를 활용한 코드를 작성한 뒤 결과를 파일로 저장합니다.
실무에서는 엑셀 파워 쿼리보다 파이썬 스크립트 한 줄로 처리하는 것이 훨씬 빠르고 오류도 적습니다. 같은 형식의 파일을 반복 변환해야 한다면 코드로 자동화하는 편이 시간을 크게 절약합니다.

파이썬과 자바스크립트로 변환하기

코드 변환은 처음에는 번거로워 보여도 한 번 작성해두면 같은 형식의 파일을 무한히 변환할 수 있습니다. 파이썬은 표준 라이브러리만으로 충분히 처리할 수 있어 가장 추천하는 방식입니다.

파이썬 변환 코드 예시

아래 코드는 외부 패키지 설치 없이 csv 모듈과 json 모듈만 사용해 변환을 수행합니다. 한글이 포함된 파일도 안전하게 처리됩니다.

import csv, json

with open('data.csv', encoding='utf-8-sig') as f:
    reader = csv.DictReader(f)
    rows = list(reader)

with open('data.json', 'w', encoding='utf-8') as f:
    json.dump(rows, f, ensure_ascii=False, indent=2)

자바스크립트 변환 방법

브라우저나 Node.js 환경에서는 Papa Parse 라이브러리를 사용하면 짧은 코드로 변환이 가능합니다. 대용량 파일도 스트리밍 방식으로 처리할 수 있어 메모리 부담이 적은 것이 장점입니다.

팁: 한글이 깨질 때는 파일을 UTF-8 with BOM 형식으로 저장하거나, 파이썬에서 encoding='utf-8-sig' 옵션으로 읽어들이면 대부분 해결됩니다.

변환 시 자주 발생하는 문제와 해결법

실제로 변환 작업을 하다 보면 예상치 못한 문제가 자주 발생합니다. 가장 흔한 사례는 한글 깨짐과 숫자 형식 변경입니다. CSV에서 0으로 시작하는 우편번호나 전화번호가 숫자로 인식되면서 앞자리가 사라지는 경우가 많습니다.

  • 한글 깨짐: 인코딩을 UTF-8로 통일하고 BOM 처리를 추가하면 거의 모든 환경에서 정상 표시됩니다.
  • 숫자 변환 오류: 우편번호, 전화번호, 사번 등 0으로 시작하는 값은 문자열로 강제 캐스팅해야 합니다.
  • 셀 내부 줄바꿈: 셀에 줄바꿈이 포함된 경우 따옴표 처리가 제대로 되어 있는지 원본 파일에서 확인이 필요합니다.

데이터 변환 외에도 개발자나 기획자라면 자주 활용하는 유틸리티가 있습니다. 단위 환산이 필요할 때는 단위 변환기를 사용하면 무게, 길이, 온도 등을 빠르게 변환할 수 있어 데이터 작업과 함께 북마크해두면 편리합니다.

지금 바로 변환이 필요하다면 위에서 소개한 무료 온라인 도구 중 하나를 골라 사용해보시기 바랍니다. 반복적인 작업이라면 위 파이썬 스크립트를 한 번 작성해두는 것이 장기적으로 가장 효율적인 방법입니다.

3일 무료체험큰손탐지기, 지금 바로 시작하세요

설치 없이 웹에서 바로 사용 가능 · PC & 모바일 지원

무료체험 시작
카카오톡 상담