본문으로 건너뛰기
SPCXTools

JSON CSV 변환기

JSON 배열을 스프레드시트용 CSV로 변환하고 중첩된 객체를 열로 평탄화하세요.

로컬 실행 — 파일이 기기 외부로 전송되지 않습니다

도구 불러오는 중…

JSON CSV 변환기 사용 방법

  1. 1왼쪽 상자에 JSON을 붙여넣거나 파일 열기를 눌러 .json 파일을 불러오세요.
  2. 2구분자를 선택하세요. 대부분의 도구는 쉼표를, 일부 유럽 지역의 엑셀은 세미콜론을, TSV는 탭을 사용합니다.
  3. 3헤더 행을 포함할지 여부와 중첩된 객체 평탄화를 통해 점으로 구분된 열을 만들지 선택하세요.
  4. 4CSV를 복사하거나 다운로드하세요. 엑셀에서 문자가 깨져 보인다면 엑셀 호환 UTF-8을 체크하세요.

스프레드시트용 JSON CSV 변환

API, 데이터베이스, 로깅 도구는 주로 JSON을 사용하지만 동료나 고객, 데이터 분석가는 스프레드시트 형식을 선호하는 경우가 많습니다. 이 JSON CSV 변환기를 사용하면 JSON 배열을 Excel, Google Sheets, Numbers 등 다양한 데이터 도구에서 열 수 있는 CSV 파일로 변환할 수 있습니다. 중첩된 객체는 각각의 열로 평탄화(flatten)되며, 누락된 필드는 자연스럽게 처리되고 특수 문자는 올바르게 이스케이프됩니다. 모든 변환 작업은 브라우저에서 직접 실행되므로 데이터가 안전하게 보호됩니다.

주요 기능

  • 객체 배열, 배열의 배열 또는 단일 객체를 입력으로 지원합니다.
  • 중첩된 객체 평탄화: address.city나 address.country와 같이 각각의 독립된 열로 변환합니다.
  • 모든 키를 열로 변환 — 서로 다른 필드를 가진 객체들도 일관된 형태의 단일 테이블로 병합됩니다.
  • 구분자 선택: 쉼표, 세미콜론, 탭(TSV), 파이프 중 선택할 수 있습니다.
  • 정확한 이스케이프 처리: CSV 표준에 맞춰 쉼표, 따옴표, 줄바꿈을 올바르게 처리합니다.
  • Excel 호환 UTF-8 옵션: BOM을 추가하여 다국어 및 특수 문자가 깨지지 않고 올바르게 표시되도록 지원합니다.
  • 복사 및 다운로드: 파일을 불러올 때 원본 파일명이 그대로 유지됩니다.

예시

다음 JSON 데이터는:

[
  { "id": 1, "name": "Ada", "address": { "city": "London" }, "tags": ["math"] },
  { "id": 2, "name": "Alan", "address": { "city": "Manchester" } }
]

아래와 같은 CSV로 변환됩니다.

id,name,address.city,tags
1,Ada,London,"[""math""]"
2,Alan,Manchester,

tags 배열은 단일 셀 안에 JSON 텍스트 형태로 저장되며, CSV 표준에 따라 따옴표가 이중으로 처리됩니다. 두 번째 행은 태그가 없으므로 해당 셀은 빈 상태로 남습니다.

팁

  • 배열을 먼저 추출하세요. 대부분의 API 응답은 {"data": [...], "page": 1}처럼 리스트를 객체로 감쌉니다. 전체 객체를 변환하면 단일 행으로 출력되므로, 항목당 하나의 행으로 만들려면 배열 부분만 복사하세요.
  • 유럽식 엑셀 환경에서는 세미콜론을 선택하세요. 엑셀에서 모든 데이터가 한 열에 들어간다면, 시스템이 쉼표를 소수점 기호로 사용하고 있기 때문입니다. 구분자로 세미콜론을 사용하거나 엑셀의 '데이터 › 텍스트/CSV에서' 메뉴를 통해 파일을 가져오세요.
  • 먼저 유효성을 검사하세요. JSON에 구문 오류가 있으면 오류 메시지에 위치가 표시됩니다. JSON 포매터를 사용하면 오류를 쉽게 찾고 수정할 수 있습니다.

관련 도구

반대 방향으로 변환하려면 CSV JSON 변환기를 사용하세요. 두 데이터를 줄 단위로 비교하려면 텍스트 비교기를 사용해 보세요.

자주 묻는 질문 (FAQ)

어떤 JSON 구조를 변환할 수 있나요?
API 응답과 같은 객체 배열이 가장 좋은 입력 형식입니다: [{"id": 1, "name": "Ada"}, …]. 각 객체는 행이 되고 각 키는 열이 됩니다. 배열의 배열은 행 단위로 변환되며, 단일 객체는 1행짜리 표가 됩니다.
중첩된 객체와 배열은 어떻게 처리되나요?
중첩 객체 평탄화를 체크하면 중첩된 객체는 점(.)으로 구분된 이름의 개별 열이 됩니다. 따라서 {"address": {"city": "London"}}은 address.city라는 열이 됩니다. 배열은 길이가 다양할 수 있으므로 단일 셀에 JSON 텍스트(["a","b"])로 입력됩니다. 평탄화를 하지 않으면 중첩된 객체 역시 JSON 텍스트로 입력됩니다.
객체마다 키가 다르면 어떻게 되나요?
변환기가 모든 객체에 나타나는 모든 키를 수집하여 처음 나타난 순서대로 모두 열로 사용합니다. 해당 키가 없는 행은 빈 셀로 처리됩니다.
엑셀에서 한글이나 특수 문자가 깨져 보이는 이유는 무엇인가요?
일부 엑셀(Excel) 버전은 CSV 파일을 열 때 구형 지역 인코딩을 기본값으로 사용합니다. 엑셀 호환 UTF-8을 체크하면 다운로드할 파일에 BOM(바이트 순서 표시)을 추가하여 엑셀에서 UTF-8 파일임을 인식할 수 있게 합니다. 구글 스프레드시트(Google Sheets)와 넘버스(Numbers)는 이 옵션 없이도 UTF-8을 정상적으로 처리합니다.
파일 크기 제한이 있나요?
정해진 제한은 없습니다. 수 메가바이트의 파일도 순식간에 변환됩니다. 모든 작업이 브라우저에서 로컬로 처리되기 때문에, 매우 큰 파일의 경우 사용 중인 기기의 메모리 용량에 의해서만 제한을 받습니다.
JSON 데이터가 서버로 전송되나요?
아니요. 파싱 및 변환은 사용자의 기기에서 직접 처리되므로 API 응답, 로그, 내보낸 데이터는 모두 안전하게 비공개로 유지됩니다.