·2분 읽기
CSV를 JSON으로 변환하는 3가지 방법 — 실무 데이터 처리
CSV 파일을 JSON으로 변환하는 3가지 방법을 정리했습니다. 온라인 도구, Python 스크립트, JavaScript 코드까지 상황별 최적의 방법을 알려드려요.

{ }
JSON 포맷터 바로 사용하기
JSON을 예쁘게 정렬하고 검증하세요
→
왜 CSV를 JSON으로 바꿔야 하나요?
엑셀이나 구글 시트에서 내보낸 데이터는 보통 CSV 형식이에요. 그런데 웹 API나 프론트엔드에서는 JSON을 쓰거든요. 이 두 형식 사이를 변환해야 하는 상황이 실무에서 정말 자주 생겨요.
예를 들어 마케팅팀이 엑셀로 보내준 상품 목록을 웹사이트에 올리려면 CSV → JSON 변환이 필요해요. 반대로 API 응답을 엑셀로 분석하려면 JSON → CSV가 필요하고요.
방법 1: 온라인 도구로 즉시 변환
가장 빠른 방법이에요. 코딩 없이 복사 붙여넣기만 하면 돼요.
Toolkio JSON 포맷터에 CSV 데이터를 넣으면 JSON으로 변환할 수 있어요. 결과를 복사해서 바로 사용하면 되니까 일회성 작업에 적합해요.
**장점**: 설치 불필요, 즉시 사용
**단점**: 대용량 파일(10MB+)은 브라우저가 느려질 수 있음
**추천 상황**: 빠르게 한 번만 변환할 때
방법 2: Python으로 자동화
반복 작업이라면 Python 스크립트가 효율적이에요.
import csv, json
with open('data.csv', 'r', encoding='utf-8') as f:
reader = csv.DictReader(f)
data = list(reader)
with open('data.json', 'w', encoding='utf-8') as f:
json.dump(data, f, ensure_ascii=False, indent=2)
이 5줄로 어떤 크기의 CSV든 JSON으로 변환할 수 있어요. DictReader를 쓰면 첫 번째 행이 자동으로 키(key)가 되거든요.
**장점**: 대용량 처리 가능, 자동화 가능
**단점**: Python 설치 필요
**추천 상황**: 정기적으로 변환해야 할 때
방법 3: JavaScript로 브라우저에서 처리
웹 앱에서 사용자가 업로드한 CSV를 처리해야 한다면 JavaScript를 쓰세요.
function csvToJson(csv) {
const lines = csv.split('\n');
const headers = lines[0].split(',');
return lines.slice(1).filter(l => l.trim()).map(line => {
const values = line.split(',');
return headers.reduce((obj, h, i) => {
obj[h.trim()] = values[i]?.trim();
return obj;
}, {});
});
}
이 함수로 CSV 문자열을 JSON 배열로 변환할 수 있어요.
**장점**: 서버 없이 클라이언트에서 처리
**단점**: 따옴표 안의 쉼표 처리가 복잡
**추천 상황**: 웹 앱에 변환 기능을 넣을 때