본문으로 건너뛰기
EVOA Toolbox

JSON을 CSV로 변환

JSON 객체 배열 또는 배열의 배열을 CSV로 변환합니다. 중첩 객체를 점 표기법으로 평탄화하며 구분자 지정과 스프레드시트 안전 내보내기를 지원합니다.

브라우저에서 로컬로 처리됩니다. 파일은 업로드되지 않습니다.

도구를 불러오는 중…

도구 소개

JSON을 붙여넣거나 .json 파일을 끌어다 놓으면 Excel, Google Sheets에서 열거나 데이터베이스에 불러올 수 있는 CSV가 만들어집니다. 일반적인 입력은 API 응답 같은 객체 배열이며, 서로 다른 키마다 열이 하나씩 만들어지고 처음 나타난 순서를 따릅니다. 키가 없는 객체는 해당 셀이 비어 있게 됩니다. 배열의 배열, 객체 하나, 단순 값의 배열도 지원합니다.

실제 JSON은 중첩된 경우가 많으므로 도구가 평탄화합니다. 점 표기법을 쓰면 {"user":{"name":"Ann"},"tags":["a","b"]}는 user.name, tags.0, tags.1 열이 되며, 구분 기호는 바꿀 수 있습니다. 구조를 유지하고 싶다면 중첩된 값을 하나의 셀 안에 JSON 문자열로 쓰도록 선택하세요.

내보내기 옵션은 스프레드시트에 필요한 것을 다룹니다. 쉼표, 세미콜론, 탭, 파이프 구분자, 헤더 행 켜기/끄기, 모든 필드 따옴표 처리, Windows 줄바꿈, Excel에서 악센트 문자가 올바르게 보이도록 하는 UTF-8 BOM을 지원합니다. CSV 인젝션 방지를 켜면 =, +, -, @로 시작하는 셀 앞에 작은따옴표를 붙여, 데이터에 악의적인 값이 있어도 파일을 열 때 수식으로 실행되지 않게 합니다. 올바르지 않은 JSON은 가능한 경우 행과 열 위치와 함께 알려 드립니다.

사용 방법

  1. 1입력란에 JSON을 붙여넣거나 .json 파일을 끌어다 놓으세요.
  2. 2중첩 데이터를 처리하는 방식(점 표기법 또는 JSON 텍스트)과 구분자를 선택하세요.
  3. 3헤더, 따옴표 처리, 줄바꿈, BOM, CSV 인젝션 방지 옵션을 설정하세요. 작은 입력은 입력하는 동안 변환되고, 큰 파일은 변환을 누르세요.
  4. 4미리보기 표와 경고를 확인한 뒤 CSV를 복사하거나 다운로드하세요.

지원 형식

입력: JSON 텍스트 또는 .json 파일(객체 배열, 배열의 배열, 값의 배열, 객체 하나). 출력: 선택한 구분자를 사용하는 CSV(.csv).

프라이버시

이 도구는 브라우저에서 실행됩니다. 입력하신 데이터는 사용자의 기기에서 처리되며 당사 서버로 전송되지 않습니다.

제한 사항

  • JSON이 올바른 형식이어야 합니다. 주석, 끝 쉼표, JSON Lines(한 줄에 객체 하나)는 지원하지 않습니다.
  • 첫 번째 항목의 형태와 맞지 않는 항목(예: 객체 배열 안의 숫자)은 건너뛰며 경고로 표시됩니다.
  • 객체마다 키가 다양하면 평탄화로 열이 매우 많아질 수 있고, 객체 안의 배열은 인덱스마다 열이 만들어집니다.
  • 인젝션 방지는 데이터를 바꾸며(작은따옴표 추가) -5 같은 일반 숫자는 그대로 둡니다. 스프레드시트로 열 파일이라면 켜고, CSV를 다른 프로그램에 넘길 때는 끄세요.
  • 파일 전체를 메모리에서 처리하므로 매우 큰 JSON은 느릴 수 있습니다. 1MB가 넘는 파일은 백그라운드 워커에서 변환합니다.

FAQ

중첩 객체와 배열은 어떻게 처리되나요?

기본적으로 user.address.city, tags.0, tags.1처럼 점 표기법으로 평탄화됩니다. 'JSON 텍스트'로 바꾸면 중첩된 값을 JSON 문자열로 한 셀에 넣습니다.

객체마다 키가 다르면 어떻게 되나요?

열은 모든 키의 합집합이며 처음 나타난 순서를 따릅니다. 키가 없는 객체는 해당 셀이 비어 있게 됩니다.

CSV 인젝션이란 무엇인가요?

=, +, -, @로 시작하는 셀은 Excel이나 Sheets에서 수식으로 실행될 수 있어 악용될 수 있습니다. 방지 옵션은 이런 셀 앞에 작은따옴표를 붙여 텍스트로 표시되게 합니다.

BOM이 왜 필요한가요?

Windows의 Excel은 CSV 파일의 인코딩을 추측하며, 파일이 UTF-8 BOM으로 시작하지 않으면 악센트 문자와 비라틴 문자가 깨지는 경우가 많습니다. 다른 프로그램에서는 BOM이 필요 없을 수 있으므로 선택 사항입니다.

관련 도구