JSON Lines (NDJSON) 뷰어
.jsonl/.ndjson 파일 붙여넣기·드롭 → 레코드 테이블 보기, field:value로 필터, 유지할 컬럼 선택, JSON/CSV 재출력.
사용법
- 줄 붙여넣기 또는
.jsonl/.ndjson파일 드롭. 테이블 자동 표시. field:value(부분 문자열 매치) 또는 일반 텍스트(JSON 어디든 매치)로 필터.- 두 번째 박스에서 유지할 컬럼 선택 — 비우면 발견된 모든 키 표시.
자세한 설명
펼치기접기
JSON Lines는 NDJSON이라고도 하며, 한 줄에 JSON 값 하나를 담는 형식입니다. 스트리밍 로그, 머신러닝 데이터셋, tail로 따라 읽는 파이프라인이 정착한 형식이죠. 이 뷰어는 각 줄을 독립적으로 파싱하므로 잘못된 레코드 하나가 파일 전체를 망치지 않습니다. 파싱된 표가 나오고, 그와 별개로 잘못된 줄들이 각각의 파서 오류 메시지와 함께 나옵니다. field:value 필터로 내용을 좁힐 수 있고 최상위 키뿐 아니라 nested.path도 받으며, 열 선택기로 다시 내보낼 때 원하는 필드만 남길 수 있습니다.
이 형식이 존재하는 이유는 JSON 배열에는 이어 붙일 수 없기 때문입니다. [...]에 레코드를 하나 더하려면 닫는 대괄호를 다시 써야 하므로, 쓰다가 죽은 프로그램은 어떤 파서도 손대지 않을 파일을 남깁니다. 게다가 읽는 쪽은 첫 원소를 보기도 전에 배열 전체를 메모리에 올려야 합니다. 한 줄에 값 하나는 이 셋을 모두 해결합니다. 한 줄 쓰면 추가가 되고, 마지막 미완성 줄을 버리면 복구가 되며, 100기가바이트짜리 파일도 한 줄씩 처리할 수 있습니다.
줄 단위로 자르는 것이 단순한 편의가 아니라 안전한 방법이 되는 근거는 JSON 문법 자체의 규칙입니다. 문자열 안에는 실제 줄바꿈 문자가 절대 들어갈 수 없습니다. 값 안의 개행은 \n이라는 두 글자로 적어야 하므로, 올바른 문서에 등장하는 개행은 오직 레코드 경계일 수밖에 없습니다. 따라서 개행으로 자르는 것은 어림짐작이 아니라 정확한 방법입니다. CSV는 그렇지 않습니다. 따옴표로 감싼 필드 안에 진짜 줄바꿈이 들어갈 수 있어서, 단순히 줄로 자르면 행이 조용히 망가집니다.
이런 파일을 쓸 때 지켜야 할 관례가 둘 있습니다. 인코딩은 UTF-8이고 그 외에는 없습니다. UTF-16이나 Latin-1으로 내보낸 파일은 로컬에서 아무리 유효한 JSON처럼 보여도 서로 통하지 않습니다. 그리고 각 줄은 그 자체로 완결된 값이어야 합니다. 들여쓴 예쁜 출력은 이 형식이 정확히 금지하는 것입니다. 들여쓴 객체는 여러 줄에 걸치고, 그 줄 하나하나는 단독으로는 유효하지 않기 때문입니다. 파일이 어디서도 열리지 않는다면 이것부터 확인하면 대개 설명이 됩니다. 모든 처리는 브라우저에서 이뤄지며 아무것도 업로드되지 않습니다.
자주 묻는 질문
손상 줄은 어떻게 됨?
줄 번호와 JSON 파싱 오류와 함께 하단에 리스트. 손상 줄 양쪽 유효 줄은 정상 파싱·표시.
중첩 필드 필터 가능?
응 — user.email:alice 또는 events.0.type:login 같은 점 경로 사용. 경로는 객체·배열 둘 다 워크.
로그나 데이터셋이 JSON 배열 대신 JSON Lines를 쓰는 이유는?
한 줄에 객체 하나인 파일은 문서 전체를 파싱하지 않고도 이어 붙이고, 쪼개고, 평범한 줄 단위 도구로 읽을 수 있기 때문이다. 고장 나는 방식도 온건하다. 쓰는 도중에 죽으면 마지막 줄만 손상되지만, 잘린 JSON 배열은 첫 바이트부터 읽을 수 없다. 하루 종일 자라는 로그나 학습 데이터에 딱 맞는 성질이다.
표에 대부분의 레코드에는 없는 열이 보인다. 정상인가?
정상이다. JSON Lines의 레코드는 서로 독립적이라, 표는 등장한 모든 키의 합집합이 되고 해당 키가 없는 레코드는 빈 칸으로 보인다. 필드가 시간이 지나며 바뀐 이벤트 로그에서는 흔한 모양이다. 그리고 어떤 필드로 거르거나 정렬하면, 실제로 그 필드를 가진 레코드에만 적용된다는 뜻이기도 하다.
관련 도구
CSV ↔ TSV ↔ Pipe 변환
구분자 텍스트를 CSV·TSV·파이프·세미콜론 간 전환 — RFC-4180 스타일 인용·자동 감지.
변환
엑셀(XLSX) → CSV · JSON · 마크다운 변환
브라우저에서 .xlsx 통합 문서를 열어 원하는 시트를 CSV·JSON·마크다운 표로 내보냅니다. 파일은 기기를 벗어나지 않습니다.
파일
CSV ↔ JSON 변환기
CSV를 JSON으로, JSON을 CSV로 변환하세요(구분자 선택 가능).
파일
CSV → HTML / Markdown / JSON 테이블
CSV를 HTML <table>·마크다운 테이블·JSON 객체 배열로 변환 — 구분자 자동 감지.
변환
고정폭 텍스트 → CSV / JSON 파서
고정폭/고정 열 텍스트를 열 너비로 잘라 필드로 나누고 CSV 또는 JSON으로 내보냅니다. 브라우저에서 동작합니다.
변환
xz(.xz) 스트림 분석기
xz 컨테이너를 읽습니다. 스트림 헤더, 블록 헤더와 필터 체인, 인덱스와 푸터, 그리고 압축을 풀지 않고 알아낸 실제 원본 크기까지.
파일