Comma-Separated Values (.csv)
RFC StandardComma-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.
Convertește din XLSX în CSV
Convertor gratuit din XLSX în CSV direct în browser. Convertește fișiere instantaneu pe dispozitivul tău.
Comprimă CSV online
Compresie 100% privată în browser – fișierele nu părăsesc niciodată dispozitivul
Inspectează și Metadate
Sistemele de operare și analizatoarele de fișiere identifică fișierele CSV prin inspectarea secvenței binare inițiale:
Semnătura antetului la nivel de octet (Magic Bytes)
Sistemele de operare și analizatoarele de fișiere identifică fișierele CSV prin inspectarea secvenței binare inițiale:
SEMNĂTURĂ HEX (OFFSET 0):
Plain TextREPREZENTARE ASCII: ASCII / UTF-8
Standardizare: RFC 4180 / IETF
Specificații tehnice
| Arhitectură container | Delimited flat text file representing tabular data rows and columns |
| Compresie | Gzip / Deflate achieves 85%-95% compression on repetitive tabular records |
| Endianitatea octeților | UTF-8 text stream (optional UTF-8 BOM EF BB BF used by Excel) |
| Spații de culoare | Not applicable |
| Canale și structură | Row records delimited by CRLF with columns delimited by commas |
| Dimensiuni maxime | Unbounded; streamable to gigabytes without loading entire file in memory |
| Transparență | Not applicable |
| Streaming și progresiv | Native line-by-line stream processing supported by all data pipelines |
Matrice de comparație tehnică: CSV vs Competitori
| Atribut tehnic | CSV (Curent) | Excel (XLSX) | Parquet | JSON |
|---|---|---|---|---|
| File Type | Plain text flat table | Zipped XML spreadsheet | Binary columnar storage | Hierarchical text |
| Multiple Sheets | No (single flat table only) | Yes (multiple workbooks and sheets) | Partition-based storage | Nested arrays and objects |
| Data Types | Untyped raw text | Typed cells, formulas, formatting | Strict binary column types | Primitive types (string, number, bool) |
| Big Data Analytics | Slow (requires reading every row linearly) | Not suitable for big data | Ultra-fast (column pruning & predicate pushdown) | Moderate |
Moduri comune de corupție și ghid de recuperare hexazecimală
⚠️ Columns shift to the right or row counts do not match.
Cauză principală: A text field containing an unescaped comma without surrounding quotation marks.
Recuperare: 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.
Cauză principală: Excel opened a UTF-8 CSV assuming the legacy Windows ANSI/CP1252 character encoding.
Recuperare: Prepend the 3-byte UTF-8 Byte Order Mark (0xEF 0xBB 0xBF) to the beginning of the file.
Analiză de securitate și vectori de atac asupra parserului
CSV files open directly in spreadsheet software like Excel and Google Sheets, exposing users to Formula Injection (CSV Injection) attacks.
Vectori de atac cunoscuți
- 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.
Cele mai bune practici de securitate: 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.
Origini istorice și repere
Avantaje cheie și beneficii
- 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.
Limitări tehnice și dezavantaje
- 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.
Curiozități tehnice interesante
- 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.
Întrebări tehnice frecvente
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.
Perechi de conversie CSV conexe
Export Microsoft Excel spreadsheets into clean, comma-separated plain text tables.
Import CSV tabular data into formatted Microsoft Excel XLSX workbooks.
Import tabular CSV spreadsheet records directly into indexed SQLite database tables.
Extract table records and rows from SQL INSERT statements into standardized comma-separated CSV spreadsheets.
Extract multidimensional scientific datasets and numerical matrices from HDF5 (.h5) into tabular CSV format.
Flatten multidimensional NetCDF (.nc) climate and oceanographic variables into comma-separated CSV spreadsheets.
Convert electronic business cards (vCard / VCF) into tabular CSV contact lists for Excel and Google Contacts.