무료 변환기

CSV를 JSON 변환기

브라우저에서 CSV 데이터 또는 파일을 JSON 형식으로 즉시 변환하세요. 사용자 정의 구분 기호, 헤더 감지 및 예쁜 형식을 지원합니다.

CSV 파일 선택

아니면 여기로 드래그 앤 드롭하세요.

또는

이 도구에 대하여

CSV(쉼표로 구분된 값)와 JSON(JavaScript Object Notation)은 모두 유비쿼터스 데이터 교환 형식이지만 데이터를 다르게 설명합니다. CSV는 단순하고 테이블 형식입니다. 헤더 행은 필드 이름을 정의하고 각 후속 행은 하나의 레코드 값을 보유합니다. JSON은 계층적입니다. 데이터는 객체(키-값 쌍) 및 배열로 구조화되어 중첩 및 더욱 풍부한 유형을 지원합니다. CSV를 JSON으로 변환한다는 것은 일반적으로 각 CSV 행을 헤더 행에서 키를 가져오고 값이 행의 셀인 JSON 개체로 변환하는 것을 의미합니다.

이 변환기는 JavaScript 생태계에서 가장 신뢰할 수 있는 CSV 라이브러리인 PapaParse를 사용하여 CSV를 구문 분석합니다. PapaParse는 쉼표가 포함된 인용 필드, 인용 필드 내의 이스케이프된 인용, 혼합된 줄 끝, 선택적 BOM 표시, 개행이 포함된 필드 등 CSV를 믿을 수 없을 정도로 어렵게 만드는 문제를 처리합니다. 출력은 가독성을 위해 기본적으로 공백 두 개 들여쓰기 형식의 구조화된 JSON입니다.

두 가지 출력 형식이 지원됩니다. 객체 배열(기본값)은 표 형식 데이터에 대한 가장 일반적인 JSON 형태인 [{header1: value1, header2: value2}, ...]를 생성합니다. 배열 배열은 [[header1, header2], [value1, value2], ...]를 생성하여 헤더 이름을 키로 사용하지 않고 열 순서를 유지합니다.

CSV를 JSON으로 변환하는 이유

대부분의 최신 API와 애플리케이션은 JSON을 사용합니다. CSV 내보내기(판매 보고서, 연락처 목록, 데이터베이스 추출)에서 JavaScript 애플리케이션, REST API 또는 NoSQL 데이터베이스로 데이터를 로드하려면 일반적으로 먼저 JSON을 거쳐야 합니다. JSON은 CSV보다 프로그래밍 방식으로 조작하기 쉽기 때문에 변환은 많은 데이터 변환의 첫 번째 단계이기도 합니다.

JSON의 구조는 CSV가 표현할 수 없는 기능도 잠금 해제합니다. 중첩된 속성이 있는 개체, 레코드당 다양한 길이의 배열 및 명시적 유형 정보(문자열, 숫자, 부울)는 모두 데이터가 JSON에 있으면 사용할 수 있게 됩니다. TSV와 같은 CSV 대안이 존재하지만 동일한 평탄성 제한을 공유합니다.

사용 방법

CSV를 붙여넣거나 업로드하고 JSON을 받으세요.

  1. CSV 추가: CSV 텍스트를 입력 영역에 붙여넣거나 .csv 파일을 놓습니다. PapaParse는 구분 기호를 자동 감지합니다. 쉼표가 가장 일반적이지만 탭, 세미콜론 및 파이프도 사용할 수 있습니다.
  2. 출력 형식 선택: 객체 배열은 헤더를 키로 사용하고 가장 일반적인 JSON 형태를 생성합니다. 배열 배열은 원시 행 구조를 유지합니다. 다운스트림 소비자가 기대하는 바를 기준으로 선택하세요.
  3. 변환: PapaParse는 브라우저에서 CSV를 처리하여 인용된 필드, 이스케이프된 인용문 및 극단적인 사례를 처리합니다. 특수 문자가 포함된 문자열에 대해 적절한 이스케이프를 사용하여 출력 JSON이 생성됩니다.
  4. 다운로드 또는 복사: .json으로 저장하거나 클립보드에 복사하세요. 출력은 모든 JSON 파서에서 사용할 수 있는 유효한 JSON입니다.

일반적인 사용 사례

기술적인 세부사항

PapaParse는 RFC 4180(CSV 사양)과 실제 CSV 파일에 포함된 변형에 대한 확장을 구현합니다. 따옴표 붙은 필드에는 쉼표, 줄 바꿈 및 따옴표 문자(두 배로 이스케이프 처리됨)가 포함될 수 있습니다. 헤더가 있는 경우 첫 번째 행에서 감지됩니다. 숫자 및 부울 값은 자동으로 입력되거나(문자열이 아닌 실제 숫자 또는 부울로 변환) 문자열로 유지될 수 있습니다.

출력 JSON은 선택적 들여쓰기와 함께 JSON.stringify를 사용하여 생성됩니다. 문자열은 JSON 구문(백슬래시, 따옴표, 제어 문자)에 대해 이스케이프되며 구조는 요청된 형식(객체 배열 또는 배열 배열)을 사용합니다.

처리되는 엣지 사례: 파일 시작 시 BOM, 혼합 줄 끝(\n 대 \r\n), 빈 셀(설정에 따라 빈 문자열 또는 null로 렌더링됨), 후행 줄 바꿈 및 필드 수가 다른 행. PapaParse의 견고성으로 인해 표준 JavaScript CSV 라이브러리가 되었습니다.

모범 사례

자주 묻는 질문

CSV를 JSON으로 변환하면 내용이 변경되나요?
내용은 최대한 정확하게 보존됩니다. 그러나 일부 형식별 기능에는 직접적인 상응 기능이 없을 수 있으므로 사소한 형식 차이가 발생할 수 있습니다.
데이터를 JSON 형식으로 변환하는 이유는 무엇입니까?
JSON은 웹 API 및 JavaScript 애플리케이션의 표준 데이터 형식입니다. 이는 사람이 읽을 수 있고 프로그래밍 언어에서 널리 지원되며 XML보다 구문이 더 간단합니다.
변환기가 중첩되거나 복잡한 CSV 구조를 처리합니까?
예. 이 도구는 중첩된 개체, 배열 및 모든 표준 CSV 데이터 유형을 올바르게 구문 분석하여 JSON 출력에서 ​​전체 데이터 구조를 유지합니다.
이 변환은 안전하고 비공개인가요?
예. 모든 처리는 귀하의 브라우저에서 로컬로 이루어집니다. 귀하의 데이터는 귀하의 장치를 떠나지 않습니다. 서버 업로드, 클라우드 처리, 데이터 수집이 없습니다.
내 데이터가 서버에 업로드되나요?
아니요. PapaParse는 브라우저에서 실행됩니다. 전환은 전적으로 귀하의 장치에서 발생합니다.
JSON을 다시 CSV로 변환할 수 있나요?
예. 프로세스를 반전시키는 JSON to CSV 도구를 사용하세요.
최대 입력 크기는 얼마입니까?
최대 50MB. 더 큰 파일은 브라우저 메모리 제약으로 인해 속도가 느려질 수 있습니다. 프로덕션 규모 변환의 경우 서버 측 또는 스크립트 방식이 더 안정적입니다.
따옴표로 묶인 여러 줄 필드가 포함된 CSV가 이상하게 변환되는 이유는 무엇입니까?
PapaParse는 올바르게 인용되면 여러 줄 필드를 처리합니다. 결과가 잘못된 경우 인용된 필드가 큰따옴표를 사용하고 내부 따옴표가 두 배("")로 이스케이프되었는지 확인하세요.