CSV

5 tools

ToolDeck의 무료 온라인 CSV 도구를 사용하면 브라우저에서 직접 CSV 데이터를 파싱, 변환, 처리할 수 있습니다 — 파일 업로드 불필요, 계정 불필요. API에 바로 사용할 수 있는 구조화된 배열로 CSV를 JSON으로 변환하거나, 스프레드시트 내보내기용으로 JSON을 CSV로 변환하거나, 문서 테이블을 위해 CSV를 Markdown으로 변환하거나, 삽입 가능한 테이블 마크업을 위해 CSV를 HTML로 변환하거나, 데이터베이스 INSERT 구문을 위해 CSV를 SQL로 변환할 수 있습니다. 모든 파서는 RFC 4180을 준수합니다: 인용된 필드, 내장된 쉼표, 혼합 구분자가 올바르게 처리됩니다.

CSV to JSON 변환기JSON to CSV 변환기는 가장 일반적인 양방향 변환을 처리합니다. CSV 포매터는 다른 도구에 데이터를 전달하기 전에 구분자와 인용 문제를 정리하며, CSV to SQL은 지원되는 모든 데이터베이스 엔진에 바로 사용할 수 있는 INSERT 구문과 CREATE TABLE 스키마를 생성합니다 — 모든 처리는 브라우저에서 이루어지며, 파일 업로드 불필요, 계정 불필요.

CSV 도구란?

CSV(쉼표로 구분된 값)는 가장 오래되고 널리 지원되는 데이터 교환 형식 중 하나입니다. 일반 텍스트로 표 형식 데이터를 저장합니다: 각 줄이 하나의 레코드이며, 레코드 내 필드는 구분자(보통 쉼표이지만 탭, 세미콜론, 파이프도 사용)로 구분됩니다. RFC 4180은 구분자, 줄바꿈 또는 큰따옴표가 포함된 필드를 인용하는 규칙을 포함한 공식 문법을 정의합니다.

단순함에도 불구하고, 원시 CSV는 현대 개발에서 다루기 불편합니다. Web API는 JSON을 기대합니다. 프론트엔드 프레임워크는 행과 열이 아닌 객체와 배열에 바인딩합니다. MongoDB나 Elasticsearch 같은 문서 데이터베이스는 JSON을 기본적으로 수집합니다. 관계형 데이터베이스도 대량 가져오기 전에 컬럼 유형을 검증하고 정렬이 맞지 않는 필드를 잡아내기 위한 중간 JSON 단계에서 이점을 얻는 경우가 많습니다. CSV 도구는 평면 표 형식 데이터를 코드가 직접 사용할 수 있는 구조화된 형식으로 변환하여 이 간극을 메웁니다.

스프레드시트 내보내기, 데이터베이스 덤프, 정부 공개 데이터 포털, Google Analytics나 Mixpanel 같은 분석 플랫폼, 구분된 텍스트를 출력하는 ETL 파이프라인을 다룰 때 CSV 도구가 필요합니다. 일회성 파싱 스크립트를 작성하는 대신, 브라우저 기반 변환기는 인용된 필드, 내장된 줄바꿈, 혼합 구분자와 같은 엣지 케이스를 올바르게 처리하면서 즉각적인 결과를 제공합니다. 클라이언트로부터 일회성 내보내기를 받거나, 마이그레이션 작성 전에 컬럼 매핑을 확인하거나, 로컬 환경 설정 없이 공급업체 피드를 점검하려는 경우, 브라우저 변환기가 어떤 스크립트 솔루션보다 빠릅니다.

ToolDeck에서 CSV 도구를 사용하는 이유

ToolDeck의 CSV 도구는 JavaScript를 사용하여 브라우저에서 완전히 데이터를 파싱합니다. 파일이 기기를 떠나지 않으며, 백엔드가 입력을 처리하지 않고, 속도를 제한하는 요청 제한도 없습니다. 모든 도구는 최신 브라우저에서 동작합니다 — 확장 프로그램, 플러그인, 설정이 필요 없습니다. 결과적으로 브라우저가 작동하는 곳이라면 어디서나 빠르고 안전한 CSV 처리가 가능합니다.

🔒
기본적인 개인정보 보호
모든 파싱과 변환은 브라우저 탭에서 이루어집니다. 고객 레코드, 재무 데이터 또는 내부 지표가 포함될 수 있는 CSV 데이터는 원격 서버에 전혀 닿지 않습니다.
📐
RFC 4180 준수
파서는 CSV에 대한 RFC 4180 사양을 따릅니다. 인용된 필드, 내장된 쉼표, 이스케이프된 큰따옴표, CRLF 줄 끝이 모두 올바르게 처리됩니다.
🔍
자동 구분자 감지
쉼표, 탭, 세미콜론 또는 파이프로 구분된 데이터를 붙여넣으세요. 도구가 구분자를 자동으로 식별하며, 엣지 케이스의 경우 수동으로 설정할 수도 있습니다.
설치 없음, 회원가입 없음
페이지를 열고 데이터를 붙여넣으세요. 설치할 CLI도, 프로젝트에 추가할 패키지도, 생성할 계정도 없습니다. 결과는 밀리초 단위로 준비됩니다.

CSV 도구 활용 사례

CSV 변환은 소프트웨어 개발의 모든 단계 — API 프로토타이핑, 데이터베이스 시딩, ETL 파이프라인 디버깅 — 에서 발생합니다. 브라우저 기반 변환기가 일회성 스크립트 작성보다 시간을 절약해주는 여섯 가지 구체적인 시나리오를 소개합니다.

API 프로토타이핑
스프레드시트 내보내기를 JSON 배열로 변환하여 모의 API 응답 데이터로 사용하세요. 프론트엔드 팀이 백엔드 준비 전에 컴포넌트 구축을 시작할 수 있습니다.
데이터베이스 시딩
CSV 데이터 덤프를 개발 데이터베이스 시딩용 JSON 픽스처로 변환하세요. Prisma, Sequelize, TypeORM 같은 ORM은 JSON 시드 파일을 지원합니다.
데이터 파이프라인 디버깅
ETL 단계에서 예상치 못한 CSV가 출력될 때, JSON으로 변환하여 검사하세요. JSON의 키-값 구조는 누락된 필드나 정렬이 맞지 않는 컬럼을 발견하기 더 쉽게 해줍니다.
QA 테스트 매트릭스
스프레드시트 기반 테스트 케이스를 JSON 배열로 변환하여 Jest, pytest 또는 Playwright 매개변수화 테스트로 데이터 기반 테스팅에 활용하세요.
분석 내보내기 처리
Google Analytics, Mixpanel, Amplitude는 데이터를 CSV로 내보냅니다. JSON으로 변환하면 JavaScript 차트 라이브러리로 해당 데이터를 필터링, 집계, 시각화할 수 있습니다.
공개 데이터 탐색
정부 포털과 Kaggle 데이터셋은 종종 CSV로 게시됩니다. JSON으로 변환하면 데이터를 프론트엔드 대시보드나 노트북에 쉽게 로드할 수 있습니다.

CSV 구분자 참조

CSV 파일은 생성한 소프트웨어와 사용자의 로케일에 따라 다른 구분자를 사용합니다. 아래 표는 네 가지 표준 구분자, 일반적인 출처, 그리고 각각을 만날 가능성이 있는 시점을 나열합니다.

구분자문자일반적인 출처비고
쉼표,Excel (US/UK), Google Sheets, 대부분의 프로그래밍 라이브러리RFC 4180에 따른 기본 구분자. 데이터에 쉼표가 포함될 경우 문제가 됩니다(인용 필요).
\t데이터베이스 내보내기, Excel (다른 이름으로 저장 .txt), 스프레드시트 클립보드 붙여넣기TSV(탭으로 구분된 값)라고도 합니다. 필드 값 안에 거의 나타나지 않아 인용이 거의 필요 없습니다.
세미콜론;Excel (유럽 로케일: DE, FR, IT, ES), LibreOffice Calc쉼표가 소수점 구분자로 사용되는 로케일(1.234,56)에서 사용됩니다. 파서가 쉼표를 가정할 때 파싱 오류의 일반적인 원인입니다.
파이프|메인프레임 내보내기, 은행/금융 데이터 피드, HL7 의료 기록데이터 값에 쉼표와 세미콜론이 모두 나타날 때 선택됩니다. 웹 개발에서는 드물지만 기업 데이터 교환에서는 표준입니다.

CSV vs JSON: 구조 비교

CSV와 JSON은 데이터를 다르게 표현합니다. 이러한 차이를 이해하면 변환이 항상 무손실이 아닌 이유와 특정 결정(유형 추론, 헤더 매핑, null 처리)이 중요한 이유를 설명할 수 있습니다.

특성CSVJSON
데이터 모델평면 테이블(행과 열)트리(중첩된 객체와 배열)
유형 시스템없음(모든 값이 문자열)문자열, 숫자, 불리언, null, 객체, 배열
중첩지원되지 않음임의 깊이
스키마암묵적(RFC 4180에 따라 헤더 행 선택 사항)자기 설명적(키가 인라인)
주석표준화되지 않음(일부 도구는 # 사용)지원되지 않음(ECMA-404)
파일 크기컴팩트(행마다 키 반복 없음)더 큼(모든 객체에서 키 반복)
스트리밍줄별(스트리밍에 자연스러움)줄별 처리를 위해 NDJSON 또는 JSON Streaming 필요

균일한 컬럼을 가진 표 형식 데이터의 경우, 행마다 키가 반복되지 않으므로 CSV가 더 공간 효율적입니다. 다양한 필드, 중첩 구조 또는 유형이 있는 데이터의 경우 JSON이 더 나은 선택입니다. CSV를 JSON으로 변환하면 각 객체가 모든 헤더 이름을 속성 키로 반복하므로 출력 파일이 더 커집니다.

올바른 CSV 도구 선택 방법

데이터 변환 방향에 맞는 도구를 선택하세요. 각 도구는 브라우저에서 완전히 데이터를 처리하고, 구분자를 자동 감지하며, RFC 4180 인용 필드를 처리하고, 설치 없이 결과를 즉시 복사하거나 다운로드할 수 있습니다.

  1. 1
    필요한 작업이 CSV 파일 또는 클립보드 데이터를 JSON 객체 배열로 변환CSV to JSON 변환기
  2. 2
    필요한 작업이 JSON 배열을 스프레드시트 가져오기 또는 데이터 내보내기용 CSV 형식으로 변환JSON to CSV 변환기
  3. 3
    필요한 작업이 문서, README 또는 위키 페이지를 위한 Markdown 테이블 생성CSV to Markdown
  4. 4
    필요한 작업이 웹페이지에 삽입할 준비가 된 thead와 tbody 요소가 있는 HTML 테이블 생성CSV to HTML 테이블
  5. 5
    필요한 작업이 CSV 파일의 구분자 정규화, 공백 제거 또는 인용 표준화CSV 포매터
  6. 6
    필요한 작업이 CSV 파일에서 INSERT 구문 또는 CREATE TABLE 스키마 생성CSV to SQL

위의 모든 도구는 구분자를 자동 감지하고, RFC 4180 인용을 처리하며, 결과를 파일로 다운로드할 수 있습니다. 소스 CSV에 일관되지 않은 구분자, 추가 공백 또는 균형이 맞지 않는 인용이 있으면 먼저 CSV 포매터를 통해 실행하세요 — 변환 전에 입력을 정리하면 잘못된 출력을 방지하고 이후 디버깅 시간을 절약합니다. 워크플로에 중간 단계로 JSON과 YAML 간 변환이 포함되는 경우 YAML 도구 카테고리도 확인하세요. JSON 출력을 검증하거나 포맷하려면 JSON 포매터와 JSON 유효성 검사기 도구가 한 클릭 거리에 있습니다.

자주 묻는 질문

RFC 4180이란 무엇이며 CSV 파싱에 왜 중요한가요?
RFC 4180은 IETF가 게시한 CSV 형식의 공식 사양입니다. 필드 인용(쉼표, 줄바꿈 또는 따옴표가 포함된 필드를 큰따옴표로 둘러싸기), 줄 종료(CRLF), 헤더 행에 대한 규칙을 정의합니다. RFC 4180을 따르는 파서는 엣지 케이스를 올바르게 처리합니다. 그렇지 않은 파서는 인용된 필드를 자동으로 분할하거나 내장된 줄바꿈을 삭제할 수 있습니다.
라이브러리 없이 JavaScript에서 CSV를 JSON으로 어떻게 변환하나요?
텍스트를 줄바꿈으로 분리하고, 첫 번째 줄을 헤더로 추출한 다음, 헤더를 키로 사용하여 이후 각 줄을 객체에 매핑합니다. 프로덕션 사용의 경우, 이 단순한 방법은 쉼표나 줄바꿈이 포함된 인용 필드에서 실패합니다. RFC 4180 엣지 케이스를 처리하는 Papa Parse 같은 라이브러리나 ToolDeck CSV to JSON 변환기를 사용하세요.
CSV 파일에 중첩 데이터를 포함할 수 있나요?
아니요. CSV는 중첩을 기본적으로 지원하지 않는 평면 형식입니다. 몇 가지 우회 방법이 있습니다: 점 표기법 헤더(address.city), JSON으로 인코딩된 셀 값, 또는 여러 관련 CSV 파일. 데이터에 중첩 구조가 있다면 JSON, YAML 또는 XML이 더 나은 형식 선택입니다.
Excel이 쉼표 대신 세미콜론으로 CSV를 내보내는 이유는 무엇인가요?
유럽 로케일에서는 쉼표가 소수점 구분자(1.234,56)이므로 Excel이 대신 세미콜론을 CSV 구분자로 사용합니다 — 코드가 쉼표 구분을 가정할 때 파싱 오류의 일반적인 원인입니다. 특정 구분자는 지역 옵션의 Windows 목록 구분자 설정에 의해 제어되며, 소수점 구분자가 쉼표일 때 기본적으로 세미콜론으로 설정됩니다. 이는 프랑스어 로케일 Excel과 미국 로케일 Excel에서 내보낸 파일이 같은 .csv 확장자를 공유하더라도 다른 구분자를 가질 수 있음을 의미합니다. 출처를 알 수 없는 CSV 파일을 파싱하기 전에 항상 구분자를 확인하거나 자동 감지하세요.
CSV 파일의 최대 컬럼 수가 있나요?
RFC 4180은 컬럼 한도를 정의하지 않습니다. 실제 한도는 사용하는 애플리케이션에 따라 다릅니다. Excel은 16,384개 컬럼(2^14)을 지원합니다. Python, JavaScript, Go의 대부분의 CSV 파서는 기본 컬럼 한도가 없습니다. 브라우저 기반 도구는 사용 가능한 메모리에 의해 제한되며, 일반적으로 문제 없이 수천 개의 컬럼을 허용합니다.
CSV와 TSV의 차이점은 무엇인가요?
TSV(탭으로 구분된 값)는 쉼표 대신 탭 문자를 필드 구분자로 사용합니다. TSV 파일은 .tsv 확장자를 가집니다. 탭 문자는 데이터 값 내부에 거의 나타나지 않으므로 TSV 파일은 CSV보다 인용이 덜 필요합니다. 데이터베이스 도구, 생물정보학 소프트웨어, 스프레드시트에서 클립보드 붙여넣기 작업이 종종 TSV를 생성합니다.
행 길이가 일관되지 않은 CSV 파일을 어떻게 처리하나요?
일관되지 않은 행 길이(불규칙한 CSV)는 일반적으로 소스 데이터에 이스케이프되지 않은 구분자 또는 누락된 따옴표가 있음을 나타냅니다. 대부분의 파서는 짧은 행을 빈 값으로 채우고 긴 행을 헤더 수에 맞게 잘라내는 방식으로 처리합니다. 불규칙함이 일관적이라면 파일이 예상과 다른 구분자를 사용하는지 또는 각 줄에 후행 구분자가 있는지 확인하세요. 예를 들어, 세미콜론으로 내보낸 파일을 쉼표 기반 파서가 읽으면 각 줄에 대해 단일 컬럼 행이 생성됩니다 — 모든 레코드가 예상되는 여섯 개 이상 대신 하나의 필드를 가진 것처럼 보입니다. 먼저 CSV 포매터를 통해 실행하면 불일치가 즉시 드러납니다.
CSV를 JSON으로 변환하면 데이터 유형이 보존되나요?
CSV에는 유형 시스템이 없습니다. 모든 값이 문자열입니다. JSON으로 변환할 때 변환기가 명시적으로 유형을 추론하지 않는 한 값은 문자열로 남습니다. 일부 변환기는 숫자 문자열을 감지하여 JSON 숫자를 출력하지만, 이로 인해 데이터 손실이 발생할 수 있습니다(우편번호, 전화번호의 앞자리 0). ToolDeck 변환기는 이 문제를 피하기 위해 기본적으로 값을 문자열로 유지합니다.