Json To Csv LogoJson To Csv

JSON 포맷하는 3가지 확실한 방법: 보기 좋게 + 검증까지 (2026 가이드)

읽기 힘든 JSON을 읽기 좋게 만드는 3가지 확실한 방법: 무료 온라인 포맷터, 에디터 내장 포맷 기능, 한 줄 터미널 명령어. 구문 검증과 흔한 오류 수정까지 다릅니다.

업데이트: 2026-10-037 분 소요

"JSON 포맷"이 실제로 하는 일

API나 로그 파일에서 오는 JSON은 종종 압축(minified)되어 있습니다: 문서 전체가 공백 없이 한 줄에 욱여넣어진 상태죠. 여전히 유효한 JSON이지만 사람이 읽기엔 고통스럽습니다. 포맷(Pretty-print, Beautify라고도 함)은 이를 들여쓰기가 적용된 여러 줄로 다시 펼쳐 구조를 보이게 합니다: 객체 안의 객체, 항목들의 배열, 각각이 어디서 끝나는지.

검증과 혼동하기 쉽운데, 둘은 보통 함께 다닙니다. 검증은 "올바른 JSON인가?"에 답하고, 포맷은 "사람이 읽을 수 있는가?"에 답합니다. 좋은 포맷터는 두 가지를 한 번에 합니다: JSON에 구문 오류가 있으면 조용히 쓰레기를 밟는 대신 포맷을 멈추고 해당 줄을 가리킵니다.

방법 1: 무료 온라인 포맷터 (가장 빠름)

API 응답이나 로그 조각을 한 번만 붙여넣어 정리하고 싶다면 온라인 도구가 가장 빠릅니다. 설치도 코드도 필요 없죠. 브라우저 안에서 완전히 동작하는(클라이언트 사이드) 도구를 고르세요. 데이터가 내 기기를 떠나지 않습니다. 토큰이나 이메일 같은 민감 정보가 든 JSON이라면 특히 중요합니다.

  • JSON을 포맷터에 붙여넣습니다(.json 파일 드래그도 가능).
  • 포맷 버튼 클릭: 들여쓰기가 적용되고, 구문이 색으로 표시되며, 오류가 있으면 줄 번호와 함께 알려줍니다.
  • 포맷된 결과를 복사해 에디터로 가져가거나, 운영용 압축 버전이 필요하면 Minify 버튼을 사용합니다.

방법 2: 코드 에디터 (매일의 습관)

JSON을 자주 다룬다면 에디터 안에서 포맷하는 게 키 한 번이면 됩니다. VS Code에서는 .json 파일을 열고 Shift+Alt+F(Windows/Linux) 또는 Shift+Option+F(Mac)를 누르세요. "문서 서식 지정"입니다. "저장 시 서식 지정"을 켜면 자동화도 됩니다.

고급 JSON 작업에는 플러그인이 필요한 에디터도 있지만, 기본 포맷 기능은 VS Code, Sublime Text(패키지 경유), JetBrains IDE에 기본 탑재되어 있습니다.

방법 3: 터미널 명령어 (반복 가능)

JSON이 파일에 있고 매번 같은 결과를 원한다면 — 스크립트 안, 배포 단계, 혹은 그냥 커맨드라인에서 빠르게 — 클릭보다 한 줄 명령어가 확실합니다.

터미널
# data.json을 포맷해서 터미널에 표시
python3 -m json.tool data.json

# 포맷된 버전을 새 파일에 저장
python3 -m json.tool data.json > data.pretty.json

# jq가 설치되어 있다면 이것도
jq . data.json

python3 -m json.tool 은 검증도 합니다: 파일이 올바른 JSON이 아니면 오류와 줄 번호를 내뱉고 종료합니다. 스크립트 안의 간단한 체크에 유용합니다.

Pretty-print vs 압축: 언제 뭘을 쓸 까

보기 좋게 포맷된 JSON은 사람용입니다: 디버깅, 손으로 편집하는 설정 파일, 문서의 예제. 압축된 JSON은 기계용입니다: API 응답, 운영 파일, 바이트 수와 파싱 속도가 중요한 모든 것.

둘 사이를 자유롭게 오가세요. 데이터는 똑같습니다. 다만 압축된 버전을 직접 손으로 편집하는 것만 피하세요: 먼저 펼쳐서 변경한 뒤, 받는 쪽이 압축본을 원할 때만 다시 압축합니다.

포맷 과정에서 드러나는 흔한 오류들

10번 중 9번, 포맷터의 "실패"는 그 자체로 최대의 수확입니다. 늘 발견되는 범인들은 이렇습니다:

  • 마지막 쉼표 — {"a": 1,} 은 JSON에서 불법입니다(JavaScript에서는 OK). 닫는 괄호 앞의 쉼표를 지우세요.
  • 작은따옴표 — JSON 문자열은 큰따옴표가 필요합니다. '값' 을 "값" 으로 바꾸세요.
  • 주석 — // 나 /* */ 는 JSON의 일부가 아닙니다. 지우거나, 도구가 지원하면 JSONC/JSON5로 전환하세요.
  • 따옴표 없는 키 — {name: "x"} 는 {"name": "x"} 가 되어야 합니다.
  • 복붙 손상 — 채팅 앱이나 문서에서 붙여넣은 전각 따옴표(" ") 는 올바른 따옴표가 아닙니다. 반각 스트레이트 따옴표로 바꾸세요.

다음 단계: 정리된 JSON을 스프레드시트로

JSON이 읽기 좋고 유효해졌다면, 다음은 대개 스프레드시트로 가져가는 일입니다. 그럴 때 무료 변환기가 나섭니다: JSON을 몇 초 만에 깔끔한 CSV로 바꿔줍니다. 업로드 없는 프라이버시는 그대로입니다.

읽기: JSON을 CSV로 변환하는 방법

관련 가이드

자주 묻는 질문

포맷과 JSON 검증은 같은 건가요?

아닙니다. 겹치는 부분은 있습니다. 검증은 JSON이 구문 규칙을 따르는지 확인하고, 포맷은 사람이 읽을 수 있도록 들여쓰기와 줄바꿈으로 다시 쓴니다. 대부분의 포맷터는 먼저 검증합니다. 구문 오류가 있는 문서는 포맷하지 않습니다. 그래서 포맷 실패는 대개 "JSON이 유효하지 않다"는 뜻입니다.

포맷하면 데이터가 바뀌나요?

바뀌지 않습니다. 포맷이 바꾸는 건 공백뿐입니다: 들여쓰기, 줄바꿈, 띄어쓰기. 키, 값, 순서, 타입은 그대로입니다. 단, 키 정렬 같은 추가 기능을 직접 켜 경우는 예외입니다(별도 옵션으로 제공되는 경우가 많습니다).

포맷할 때 "Unexpected token"이 뜨는 건 무슨 뜻인가요?

파서가 둘 곳 없는 문자를 만났다는 뜻입니다. 거의 확실히 마지막 쉼표, 작은따옴표 문자열, 따옴표 없는 키, 채팅 앱에서 붙여넣은 전각 따옴표 중 하나입니다. 오류 메시지에는 보통 위치가 포함됩니다. 그 부분을 고치고 다시 포맷하면 다음 오류(있다면)가 표시됩니다.

설치 없이 JSON을 포맷할 수 있나요?

네. 브라우저에서 동작하는 무료 온라인 포맷터를 쓰거나, Python이 이미 있다면 python3 -m json.tool 한 줄 명령어를 쓰세요. VS Code도 .json 파일을 Shift+Alt+F로 기본 포맷할 수 있습니다.

온라인 포맷터에 JSON을 붙여넣어도 안전한가요?

대개는 괜찮지만, 브라우저 안에서만 처리하는(클라이언트 사이드) 도구를 고르세요. 그러면 어디에도 전송되지 않습니다. API 키나 개인정보처럼 이메일로 보내고 싶지 않은 내용이 있다면 에디터나 터미널 명령어를 쓰세요.

압축(minified)된 JSON이 뭔가요?

불필요한 공백을 모두 제거한 JSON입니다: 문서 전체가 한 줄죠. API나 운영 파일에서 쓰는 이유는 크기가 작고 파싱도 약간 빠르기 때문입니다. 유효한 JSON이지만 사람 눈용은 아닙니다. 어떤 포맷터로든 읽기 좋은 버전으로 다시 펼 수 있습니다.

거대한 JSON 파일도 포맷되나요?

됩니다. 단, 한계가 있습니다. 브라우저형 포맷터는 몇 MB 정도까지는 잘 되지만, 그 이상은 탭이 멈출 수 있습니다. 큰 파일은 python3 -m json.tool 이나 jq 로 로컬에서 포맷하세요. 큰 파일도 가볍게 처리합니다.

JSON 포맷 완료?

정리된 JSON을 몇 초 만에 스프레드시트용 CSV로 변환하세요. 무료, 프라이빗, 가입 불필요.

JSON→CSV 변환기 열기
모든 가이드