mygems

JSON 포맷 및 검증

올바른 JSON은 보기 좋게, 잘못된 JSON은 위치를 찾아 대부분 고쳐 줍니다.

  • 행·열로 오류 위치 표시
  • 한 번에 고치기
  • 큰 숫자도 그대로 유지
  • 업로드 없음

1.JSON을 붙여 넣거나 파일을 여세요

JSON, JSONC 또는 일반 텍스트 파일을 여기로 끌어다 놓거나 파일을 선택하세요.

2.포맷, 압축, 고치기

고치기는 주석과 마지막 쉼표를 지우고, 작은따옴표를 큰따옴표로 바꾸고, 따옴표 없는 키에 따옴표를 붙입니다. 그 밖의 것은 추측하지 않습니다.

만든 이유

파싱에 실패하는 JSON은 대개 사람이 쓴 것입니다. 사람은 JSON을 JavaScript처럼 씁니다. 여기에 주석, 저기에 마지막 쉼표, 작은따옴표, 따옴표 없는 키 같은 식으로요. "Unexpected token at position 4031"이라고만 답하는 검증기는 기술적으로는 맞지만 실제로는 쓸모가 없습니다. 이 도구는 몇 행 몇 열인지 말로 알려 주고, 위의 네 가지 습관은 직접 찾게 하는 대신 한 번에 되돌려 줍니다.

기능

  • 공백 2칸, 4칸, 탭으로 포맷하거나 가장 작은 크기로 압축합니다.
  • 엄격하게 검증하고, 문제를 말로 설명하면서 행과 열을 알려 줍니다.
  • 클릭 한 번으로 문제 위치에 커서를 놓아 앞뒤 문맥을 확인할 수 있습니다.
  • 주석, 마지막 쉼표, 작은따옴표 문자열, 따옴표 없는 키를 고치고 각각 몇 개를 바꿨는지 알려 줍니다.
  • 숫자를 적힌 그대로 유지하므로 20자리 ID가 반올림되지 않습니다.

고치기가 하지 않는 일

추측하지 않습니다. 두 값 사이의 빠진 쉼표, 닫히지 않은 괄호, 엉뚱한 문자는 각각 여러 방법으로 고칠 수 있고, 포맷터가 조용히 하나를 골라 버리면 문서의 의미가 바뀔 수 있습니다. 이런 경우는 행과 열만 알려 드리고, 결정은 직접 하시게 됩니다.

자주 묻는 질문

JSON이 어딘가로 전송되나요?
아니요. 페이지 안에서 실행되는 코드가 파싱합니다. 이 도구 뒤에는 서버가 없으며, 붙여 넣거나 연 내용은 탭 밖으로 나가지 않습니다.
다른 포맷터는 긴 숫자를 바꾸는데, 여기서는 왜 그대로 유지되나요?
대부분의 포맷터는 JSON을 JavaScript 숫자로 파싱하는데, 이 숫자는 유효 숫자가 약 15자리라서 12345678901234567890이 12345678901234567000으로 바뀝니다. 이 도구는 모든 숫자를 적힌 텍스트 그대로 유지하고 주변의 공백만 바꿉니다.
JSON5나 JSONC도 지원하나요?
가장 많이 쓰는 부분인 주석, 마지막 쉼표, 작은따옴표, 따옴표 없는 키는 읽을 수 있고, 고치기를 누르면 표준 JSON으로 바꿉니다. 출력은 항상 표준 JSON입니다.
얼마나 큰 파일까지 처리할 수 있나요?
데스크톱 브라우저에서는 수십 메가바이트까지 가능합니다. 2MB를 넘으면 페이지가 느려지지 않도록 텍스트를 상자에 표시하지 않지만, 포맷과 고치기는 파일 전체에 적용됩니다.

다른 도구