Comma-Separated Values (.csv)

RFC Tiêu chuẩn

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.

Chuyển đổi XLSX sang CSV

Trình chuyển đổi từ XLSX sang CSV miễn phí trên trình duyệt. Chuyển đổi tệp ngay lập tức trên thiết bị của bạn.

Nén CSV trực tuyến

Nén riêng tư 100% trong trình duyệt – tệp không bao giờ rời khỏi thiết bị của bạn

Kiểm tra & Siêu dữ liệu

Các hệ điều hành và trình phân tích tệp nhận dạng tệp CSV bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:

Chọn hoặc kéo tệp

Chọn hoặc thả tệp vào đây

Chuyển đổi 100% riêng tư trong trình duyệt - tệp không bao giờ rời khỏi thiết bị của bạn

hoặc dán Ctrl+V
Cam kết bảo mật không truyền tải qua mạng: 0 byte được tải lên máy chủ bên ngoài. Toàn bộ quá trình xử lý diễn ra cục bộ trong hộp cát trình duyệt của bạn.

Chữ ký tiêu đề ở cấp độ Byte (Magic Bytes)

Các hệ điều hành và trình phân tích tệp nhận dạng tệp CSV bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:

CHỮ KÝ HEX (OFFSET 0):

Plain Text

BIỂU DIỄN ASCII: ASCII / UTF-8

Tiêu chuẩn hóa: RFC 4180 / IETF

Thông số kỹ thuật

Kiến trúc ContainerDelimited flat text file representing tabular data rows and columns
NénGzip / Deflate achieves 85%-95% compression on repetitive tabular records
Thứ tự byte EndiannessUTF-8 text stream (optional UTF-8 BOM EF BB BF used by Excel)
Không gian màuNot applicable
Kênh & Cấu trúcRow records delimited by CRLF with columns delimited by commas
Kích thước tối đaUnbounded; streamable to gigabytes without loading entire file in memory
Độ trong suốtNot applicable
Truyền phát & Tăng dầnNative line-by-line stream processing supported by all data pipelines

Ma trận so sánh kỹ thuật: CSV so với các đối thủ

Thuộc tính kỹ thuậtCSV (Hiện tại)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

Các chế độ hỏng hóc phổ biến & Hướng dẫn khôi phục Hex

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

Nguyên nhân gốc rễ: A text field containing an unescaped comma without surrounding quotation marks.

Khắc phục: 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.

Nguyên nhân gốc rễ: Excel opened a UTF-8 CSV assuming the legacy Windows ANSI/CP1252 character encoding.

Khắc phục: Prepend the 3-byte UTF-8 Byte Order Mark (0xEF 0xBB 0xBF) to the beginning of the file.

Phân tích bảo mật & Các vectơ tấn công bộ phân tích cú pháp

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

Các Véc-tơ Tấn công Đã biết

  • 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.

Thực tiễn Tốt nhất về Phòng thủ: 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.

Nguồn gốc lịch sử & Các cột mốc

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

Ưu điểm & Lợi ích chính

  • 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.

Hạn chế & Nhược điểm kỹ thuật

  • 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.

Thông tin kỹ thuật thú vị

  • 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.

Các câu hỏi kỹ thuật thường gặp

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.