사용자의 기기에서 직접 실행됩니다
파서, 구조 평탄화기, CSV 생성기 모두가 브라우저 내 자바스크립트로 실행됩니다. 파일은 내 기기에서 열릴 뿐 서버로 전송되지 않습니다. 개발자 도구의 네트워크(Network) 탭을 열어 확인해보세요: 아무런 요청도 발생하지 않습니다.
브라우저에서 직접 실행
JSON 배열과 객체를 정돈된 CSV 스프레드시트 테이블로 즉시 변환합니다.
JSON 데이터를 붙여넣으면 입력과 동시에 실시간 결과가 여기에 표시됩니다.
서버로 데이터가 전송되지 않습니다. 브라우저 개발자 도구의 네트워크 탭에서 통신이 발생하지 않음을 직접 확인할 수 있습니다.
서버 업로드 제로
용량 제한과 유료 결제는 다른 도구들이 사용자 파일을 자체 서버로 업로드하여 처리하기 때문에 발생합니다. 브라우저에서 직접 변환하면 오직 내 컴퓨터의 가용 메모리만이 한계가 됩니다.
사용자의 기기에서 직접 실행됩니다
파서, 구조 평탄화기, CSV 생성기 모두가 브라우저 내 자바스크립트로 실행됩니다. 파일은 내 기기에서 열릴 뿐 서버로 전송되지 않습니다. 개발자 도구의 네트워크(Network) 탭을 열어 확인해보세요: 아무런 요청도 발생하지 않습니다.
버퍼링 대신 스트리밍 방식으로 처리합니다
입력 파일은 청크 단위로 읽히며 웹 워커(Web Worker)를 통해 메인 스레드와 분리되어 실시간으로 변환됩니다. 기가바이트 단위의 대용량 파일도 메모리를 점유하지 않아 브라우저가 멈추지 않습니다.
서버 비용이 없으므로 제한할 이유가 없습니다
일일 사용 횟수나 용량 제한은 서버 CPU와 대역폭 비용 때문에 존재합니다. 이 도구는 서버 자원을 일체 소모하지 않으므로 용량 제한, 큐 대기, 회원가입이 필요하지 않습니다.
일반적인 문제점과 해결책
대다수 온라인 변환기는 대용량 파일, 중첩 객체, 엑셀 호환성, 깨진 레코드, 데이터 보안이라는 동일한 문제에 부딪힙니다. 본 도구가 이를 어떻게 해결하는지 확인해보세요.
완벽한 제어
도구가 임의로 데이터를 가공하면 프로덕션 환경의 정밀한 데이터를 다룰 수 없습니다. 입력 JSON부터 출력 CSV까지의 모든 구조적 선택권을 제공합니다.
원하는 대로 설정하는 평탄화(Flattening)
경로 구분자, 최대 탐색 깊이, 깊은 계층을 원본 JSON 문자열로 유지할지 여부를 직접 지정할 수 있습니다. 빈 객체와 null 값도 규칙을 설정할 수 있습니다.
배열(Array)을 다루는 4가지 방법
인덱스별 개별 열 분리, 항목별 행 분리, 단일 셀 결합, 원본 JSON 유지 중 데이터 특성에 맞게 선택할 수 있습니다.
추측이 아닌 명확한 컬럼 테이블 제어
감지된 모든 필드의 추론된 타입과 채워진 비율을 표시합니다. 내보내기 전 이름을 바꾸거나 순서를 바꾸고 제외할 수 있습니다.
구분자, 따옴표, 줄바꿈 제어
쉼표(,), 세미콜론(;), 탭(\t), 파이프(|) 구분자 지원. 최소 따옴표 또는 전체 따옴표. LF 또는 CRLF 줄바꿈. UTF-8 BOM 선택 지원.
UTF-8 외 다양한 인코딩 완벽 지원
Windows-1252, Latin-1, EUC-KR 등의 인코딩 파일을 글자 깨짐(mojibake) 없이 정상적으로 읽으며, 옵션 변경 시 미리보기가 즉시 갱신됩니다.
데이터가 아닌 설정값만 공유하는 링크
동료에게 링크를 공유하면 지정한 옵션 설정값만 전달되며 실제 데이터 행은 절대 포함되지 않습니다. URL에는 데이터가 저장되지 않습니다.
가이드
JSON을 CSV로 변환하는 방법
중첩된 키 평탄화, 배열 처리 및 깔끔한 CSV 내보내기를 위한 기술 가이드입니다.
JSON과 CSV 비교
계층적 트리 구조 vs 2차원 표 형식: 구조적 차이점, 메모리 트레이드오프 및 활용 사례.
중첩된 JSON 평탄화하기
속성 경로, 깊이 제한 및 네 가지 배열 처리 전략과 각각의 출력 결과.
JSON 서식 지정 및 정렬
들여쓰기 표준, 대화형 접기/펼치기 트리, 키 정렬 및 압축(Minify) 방법.
구문 검증 및 복구
RFC 8259 표준 준수 확인, 행/열 단위의 오류 위치 추적 및 원클릭 자동 복구.
JSON 배열을 CSV로 변환하기
객체 배열, 2D 매트릭스 및 중첩된 배열을 행으로 언와인드하는 방법.
CSV를 JSON으로 변환하기
점 표기법 경로를 객체로 복원하고 배열 대괄호 및 안전한 타입 추론을 수행합니다.
도구 소개
JSON to CSV 변환기는 계층적이고 구조화된 JavaScript Object Notation (JSON) 데이터를 평면적인 2차원 쉼표 구분 값 (CSV) 스프레드시트로 변환합니다. JSON은 REST API와 NoSQL 데이터베이스의 범용 표준이며, CSV는 Excel, Google Sheets 및 관계형 데이터베이스 입력의 표준입니다. 본 웹 도구는 파일 업로드나 회원가입, 용량 제한 없이 100% 사용자 브라우저 내부에서 모든 작업을 안전하게 처리합니다.
JSON에서 CSV로의 변환은 간단한 3단계로 이루어집니다:
JSON은 트리 형태의 계층 구조이며 CSV는 평면적인 행과 열 구조입니다. 중첩된 레코드를 변환할 때 각 하위 속성은 customer.address.city와 같이 전체 경로가 명시된 개별 열로 자동 변환됩니다. 경로 구분자(점, 밑줄, 슬래시)를 변경하거나 최대 탐색 깊이를 제한할 수 있습니다.
JSON 레코드 내부의 배열은 테이블의 단일 셀에 바로 담을 수 없으므로 변환 규칙이 필요합니다. 본 도구는 4가지 전략을 제공합니다:
실제 고객 주문 데이터를 표 형식으로 변환하는 예시입니다:
[
{
"orderId": "ORD-2048",
"customer": { "name": "Elena Rostova", "email": "elena@example.com" },
"total": 149.50,
"status": "shipped"
},
{
"orderId": "ORD-2049",
"customer": { "name": "Marcus Vance", "email": "marcus@example.com" },
"total": 89.00,
"status": "pending"
}
]변환기는 두 레코드를 모두 분석하여 모든 필드를 포함하는 통합 헤더를 생성하고 중첩된 customer 객체를 평탄화하여 깔끔한 CSV를 출력합니다:
orderId,customer.name,customer.email,total,status
ORD-2048,Elena Rostova,elena@example.com,149.5,shipped
ORD-2049,Marcus Vance,marcus@example.com,89,pendingJSON과 CSV의 구조적 특성을 이해하면 적절한 파일 형식을 선택하는 데 도움이 됩니다:
| 구분 | JSON (JavaScript Object Notation) | CSV (Comma-Separated Values) |
|---|---|---|
| 데이터 모델 | 계층적 트리 구조 (중첩 객체 및 배열) | 2차원 테이블 행렬 (행과 열) |
| 데이터 유형 | 문자열, 숫자, 불리언, null, 배열, 객체 지원 | 유형이 없는 일반 텍스트 (프로그램에서 추론) |
| 파일 크기 | 상대적으로 큼 (레코드마다 키 이름 반복) | 간결함 (헤더 행에 키 이름을 1회만 선언) |
| 주요 사용처 | 웹 API, NoSQL 데이터베이스, 설정 파일 | 스프레드시트 (Excel, Sheets), SQL, BI 분석 도구 |
Python 파이프라인에서 변환을 자동화하려는 경우 pandas를 사용하면 3줄로 간단히 처리할 수 있습니다:
import json
import pandas as pd
with open("input.json", encoding="utf-8") as handle:
data = json.load(handle)
frame = pd.json_normalize(data, sep=".")
frame.to_csv("output.csv", index=False)외부 패키지가 없는 환경에서는 Python 표준 라이브러리(json 및 csv.DictWriter)로도 동일하게 구현 가능합니다. 64비트 정수 ID의 정밀도 손실을 방지하려면 json.load에 parse_int=str을 전달하세요.
Node.js 환경에서는 외부 패키지 없이 기본 내장 모듈만으로 평면 JSON 레코드를 변환할 수 있습니다:
import { readFile, writeFile } from 'node:fs/promises';
const data = JSON.parse(await readFile('input.json', 'utf8'));
const fields = [...new Set(data.flatMap((row) => Object.keys(row)))];
const cell = (value) => {
const text = value == null ? '' : String(value);
return /[",\n]/.test(text) ? '"' + text.replaceAll('"', '""') + '"' : text;
};
const csv = [fields, ...data.map((row) => fields.map((field) => row[field]))]
.map((row) => row.map(cell).join(','))
.join('\n');
await writeFile('output.csv', csv, 'utf8');기존 온라인 도구는 파일을 원격 서버로 업로드하기 때문에 서버 유지비용이 발생하여 파일 크기 제한이나 유료 구독을 요구합니다. jsoncsvonline은 Web Worker를 사용하여 100% 브라우저 내에서 직접 동작하므로 데이터가 기기 외부로 유출되지 않으며 대기열이나 일일 할당량이 없습니다. 자세한 기술 내용은 중첩 JSON 평탄화 가이드, JSON 배열 변환 방법 및 Excel 호환 CSV 구분 기호와 문자 인코딩 설정을 참고하세요.
CSV나 Excel로 변환하기 전에 구문 오류를 미리 확인하면 변환 실패를 방지할 수 있습니다. RFC 8259 표준 검증을 위한 JSON 검증기, 누락된 따옴표와 쉼표를 수정하는 JSON 자동 복구 도구, 보기 쉽게 정렬하는 JSON 포맷터, 변경 사항을 비교하는 JSON Diff 비교 도구, 프로덕션용으로 압축하는 JSON 압축기도 함께 활용해 보세요.
플랫폼 개요
도구, 지원 형식, 개인정보 보호 모델 및 기술 아키텍처에 대한 간략한 안내입니다.
jsoncsvonline.com은 브라우저에서 직접 동작하는 무료 데이터 변환 플랫폼입니다. JSON to CSV, CSV to JSON, Excel(.xlsx) 내보내기, JSONL 변환, JSON 정렬 및 구문 검증 기능을 제공합니다.
민감한 데이터를 외부 서버로 전송하지 않고 안전하고 빠르게 데이터 형식을 변환해야 하는 소프트웨어 개발자, 데이터 엔지니어 및 분석가를 위해 만들어졌습니다.
Excel에서 긴 숫자 ID가 잘리거나 특수문자가 깨지는 현상, 복잡한 중첩 객체 및 배열 처리, 서버 파일 크기 제한 등의 문제를 완벽히 해결합니다.
표준 JSON, CSV(쉼표, 세미콜론, 탭, 파이프 구분 기호 지원), TSV, JSON Lines(JSONL / NDJSON) 및 셀 서식이 지정된 Microsoft Excel(.xlsx) 통합 문서를 지원합니다.
100% 브라우저 로컬 처리 방식으로 데이터가 서버로 전송되지 않습니다. 파일 크기 제한이 없고, 계정 가입이 필요 없으며, 완전 무료입니다.
모든 파싱 및 변환 작업은 클라이언트 측 JavaScript와 전용 Web Worker를 통해 실행되므로 기가바이트 단위의 대용량 파일도 부드럽게 처리됩니다.
FAQ
표준 RFC CSV 규격에 맞게 이스케이프 처리됩니다. 쉼표나 줄바꿈이 있는 필드는 자동으로 큰따옴표로 감싸지며, 내부 따옴표는 2중 따옴표("")로 변환됩니다. 필요 시 줄바꿈을 공백으로 대체할 수도 있습니다.
다운로드 전 "Excel 프리셋"을 선택하세요. UTF-8 BOM과 CRLF 줄바꿈을 추가하여 엑셀에서 한글이 깨지지 않고 열립니다. 또는 본 사이트의 "JSON Excel 변환기"를 사용해 직접 .xlsx 파일로 내보낼 수도 있습니다.
기본적으로 각 최종 속성이 계층 경로 이름(예: customer.name)의 열로 자동 생성됩니다. 경로 구분자를 변경하거나 깊이 제한을 설정할 수도 있습니다.
pandas를 사용하면 pd.json_normalize(data)로 중첩 데이터를 평탄화한 후 to_csv("out.csv", index=False)로 저장할 수 있습니다. 상단 "코드" 탭에서 현재 설정이 반영된 Python 코드를 즉시 복사할 수 있습니다.
JSON 파일을 입력창에 끌어다 놓고 열 미리보기를 확인한 뒤 "CSV 다운로드"를 클릭하면 됩니다. 모든 처리는 브라우저 내부에서 완료됩니다.
변환 방향을 CSV에서 JSON으로 전환하고 CSV 데이터를 입력하면 구조화된 JSON 데이터가 즉시 생성됩니다.
아닙니다. 모든 변환 작업은 사용자 브라우저의 Web Worker 내부에서 로컬로 실행되므로 파일이 외부 서버로 전송되지 않습니다. 브라우저 개발자 도구의 네트워크(Network) 탭에서 변환을 실행하여 직접 네트워크 요청이 없음을 확인할 수 있습니다. 파일 크기 제한이나 일일 이용 한도가 없는 이유도 서버 비용이 발생하지 않기 때문입니다.
제한이 없습니다. 입력 데이터를 청크(chunk) 단위로 읽고 스트리밍 방식으로 처리하므로 파일 크기가 커져도 메모리 점유율이 일정하게 유지됩니다. 수 기가바이트(GB) 크기의 대용량 파일도 로컬 컴퓨터 성능에 맞춰 안전하게 변환할 수 있습니다.
계정 생성, 로그인, 유료 결제 없이 100% 무료로 모든 기능을 이용하실 수 있습니다.
관련 변환기 및 개발자 도구