Comma-Separated Values (.csv)

RFC 표준

Comma-Separated Values (CSV) is a ubiquitous plain-text format for tabular data, where each line represents a data record and fields are separated by delimiter characters.

XLSX을(를) CSV(으)로 변환

무료 브라우저 내 XLSX-CSV 변환기. 기기에서 파일을 즉시 변환하세요.

CSV 온라인 압축

브라우저 내 100% 안전한 압축 — 파일이 기기 외부로 전송되지 않습니다

검사 및 메타데이터

운영 체제와 파일 분석기는 파일 선두의 바이너리 바이트 시퀀스를 검사하여 CSV 파일을 식별합니다:

파일 선택 또는 드래그

여기에 파일을 선택하거나 놓으세요

100% 브라우저 내 프라이버시 변환 - 파일이 기기를 절대 떠나지 않습니다

또는 붙여넣기 Ctrl+V
제로 네트워크 전송 프라이버시 보장: 외부 서버로 업로드된 데이터 0바이트. 모든 처리는 브라우저 샌드박스내에서 로컬로 수행되었습니다.

바이트 단위 헤더 시그니처 (매직 바이트)

운영 체제와 파일 분석기는 파일 선두의 바이너리 바이트 시퀀스를 검사하여 CSV 파일을 식별합니다:

16진수 시그니처 (오프셋 0):

Plain Text

ASCII 표현: ASCII / UTF-8

표준화: RFC 4180 / IETF

기술 사양

컨테이너 아키텍처Delimited flat text file representing tabular data rows and columns
압축Gzip / Deflate achieves 85%-95% compression on repetitive tabular records
바이트 엔디안UTF-8 text stream (optional UTF-8 BOM EF BB BF used by Excel)
색 공간Not applicable
채널 및 구조Row records delimited by CRLF with columns delimited by commas
최대 크기Unbounded; streamable to gigabytes without loading entire file in memory
투명도Not applicable
스트리밍 및 프로그레시브Native line-by-line stream processing supported by all data pipelines

기술 비교 매트릭스: CSV 대 경쟁사

기술적 속성CSV (현재)Excel (XLSX)ParquetJSON
File TypePlain text flat tableZipped XML spreadsheetBinary columnar storageHierarchical text
Multiple SheetsNo (single flat table only)Yes (multiple workbooks and sheets)Partition-based storageNested arrays and objects
Data TypesUntyped raw textTyped cells, formulas, formattingStrict binary column typesPrimitive types (string, number, bool)
Big Data AnalyticsSlow (requires reading every row linearly)Not suitable for big dataUltra-fast (column pruning & predicate pushdown)Moderate

일반적인 손상 모드 및 헥스 복구 가이드

⚠️ Columns shift to the right or row counts do not match.

근본 원인: A text field containing an unescaped comma without surrounding quotation marks.

복구: RFC 4180 requires fields containing commas to be wrapped in double quotes: "Smith, John".

⚠️ Accented characters render as strange symbols (mojibake like é instead of é) in Excel.

근본 원인: Excel opened a UTF-8 CSV assuming the legacy Windows ANSI/CP1252 character encoding.

복구: Prepend the 3-byte UTF-8 Byte Order Mark (0xEF 0xBB 0xBF) to the beginning of the file.

보안 분석 및 파서 공격 벡터

CSV files open directly in spreadsheet software like Excel and Google Sheets, exposing users to Formula Injection (CSV Injection) attacks.

알려진 공격 벡터

  • Formula Injection: Cells starting with '=', '+', '-', or '@' executing spreadsheet macros or DDE commands (e.g. '=cmd|' /C calc'!A0').
  • Data exfiltration via HYPERLINK() formulas sending sensitive cell data to remote attacker servers upon click.

방어적 모범 사례: When exporting user data to CSV, prepend a single quote (') or tab to any cell starting with '=', '+', '-', or '@' to force plain text rendering in Excel.

역사적 배경 및 주요 이력

2005IETF publishes RFC 4180, establishing the formal specification for CSV files.
1972IBM Fortran (H Extended) compiler implements comma-delimited input/output.

주요 장점

  • Maximum simplicity: readable in any text editor and importable into every database and spreadsheet.
  • Extremely fast line-by-line streaming without building a full in-memory DOM.
  • Minimal overhead: no verbose tag syntax or schema definitions.

기술적 제한 사항 및 단점

  • No standard data types: numbers, dates, booleans, and text are all stored as raw strings.
  • No support for multiple sheets, cell formatting, formulas, or metadata.
  • Delimiter conflicts (commas inside text, decimal commas in European locales) cause frequent parsing bugs.

흥미로운 기술적 상식

  • In many European countries where commas are used as decimal points, semicolons (;) are used instead of commas as CSV separators.
  • Microsoft Excel historically required a UTF-8 BOM (0xEF 0xBB 0xBF) to correctly display non-ASCII accented characters.

자주 묻는 기술 질문

What is RFC 4180?

RFC 4180 is the official IETF standard for CSV. It mandates that fields containing commas, line breaks, or double quotes must be enclosed in double quotes, and internal quotes must be escaped by doubling them ("").

Why do CSV files open with corrupted characters in Excel?

Older versions of Microsoft Excel default to the local Windows code page (like Windows-1252) rather than UTF-8 when opening CSV files directly. Adding a UTF-8 BOM (Byte Order Mark) at the start of the file forces Excel to decode UTF-8 correctly.