Πίνακας CSV (.csv)

RFC Τυπικό

Το Comma-Separated Values (CSV) είναι ένα πανταχού παρόν μορφότυπο απλού κειμένου για δεδομένα πινάκων, όπου κάθε γραμμή αντιπροσωπεύει μια εγγραφή δεδομένων και τα πεδία διαχωρίζονται με χαρακτήρες οριοθέτησης.

Μετατροπή XLSX σε CSV

Δωρεάν μετατροπέας από XLSX σε CSV εντός του προγράμματος περιήγησης. Μετατρέψτε αρχεία άμεσα στη συσκευή σας.

Συμπίεση CSV στο διαδίκτυο

Ιδιωτικά - τα αρχεία δεν φεύγουν ποτέ από τη συσκευή σας

Επιθεώρηση & Μεταδεδομένα

Τα λειτουργικά συστήματα και τα εργαλεία ανάλυσης αρχείων αναγνωρίζουν τα αρχεία CSV ελέγχοντας την αρχική δυαδική ακολουθία byte:

Επιλέξτε ή αποθέστε αρχεία εδώ

Ιδιωτικά - τα αρχεία δεν φεύγουν ποτέ από τη συσκευή σας

ή επικόλληση Ctrl+V
Εγγύηση Απορρήτου Μηδενικής Μετάδοσης Δικτύου: Δεν μεταφορτώνεται κανένα byte σε εξωτερικούς διακομιστές. Όλη η επεξεργασία γίνεται τοπικά στο απομονωμένο περιβάλλον του προγράμματος περιήγησής σας.

Υπογραφή κεφαλίδας σε επίπεδο byte (Magic Bytes)

Τα λειτουργικά συστήματα και τα εργαλεία ανάλυσης αρχείων αναγνωρίζουν τα αρχεία CSV ελέγχοντας την αρχική δυαδική ακολουθία byte:

ΔΕΚΑΕΞΑΔΙΚΗ ΥΠΟΓΡΑΦΗ (OFFSET 0):

Δεν υπάρχει σταθερή υπογραφή

ΑΝΑΠΑΡΑΣΤΑΣΗ ASCII: Byte κειμένου· η κωδικοποίηση ποικίλλει (συχνά UTF-8).

Τυποποίηση: RFC 4180 / IETF

Τεχνικές Προδιαγραφές

Αρχιτεκτονική ΠεριέκτηΟριοθετημένο αρχείο απλού κειμένου που αναπαριστά σειρές και στήλες δεδομένων σε μορφή πίνακα
ΣυμπίεσηΤα Gzip και Deflate μπορούν να συμπιέσουν επαναλαμβανόμενο κείμενο· το μέγεθος που προκύπτει εξαρτάται από τα δεδομένα και τις ρυθμίσεις.
Σειρά byte (endianness)Ροή κειμένου UTF-8 (προαιρετικό UTF-8 BOM EF BB BF που χρησιμοποιείται από το Excel)
Χρωματικοί ΧώροιΔεν εφαρμόζεται
Κανάλια & ΔομήΕγγραφές γραμμών οριοθετημένες με CRLF και στήλες οριοθετημένες με κόμματα
Μέγιστες ΔιαστάσειςΑπεριόριστες· δυνατότητα ροής σε gigabytes χωρίς φόρτωση ολόκληρου του αρχείου στη μνήμη
ΔιαφάνειαΔεν εφαρμόζεται
Ροή δεδομένων και προοδευτική φόρτωσηΕγγενής επεξεργασία ροής γραμμή-προς-γραμμή που υποστηρίζεται από όλες τις ροές εργασιών δεδομένων

Τεχνικός Πίνακας Σύγκρισης: CSV έναντι Ανταγωνιστών

Τεχνικό χαρακτηριστικόCSV (Τρέχον)Excel (XLSX)ParquetJSON
Τύπος αρχείουΕπίπεδος πίνακας σε απλό κείμενοΣυμπιεσμένο λογιστικό φύλλο XMLΔυαδική αποθήκευση σε στήλεςΙεραρχικό κείμενο
Πολλαπλά φύλλαΌχι (μόνο ενιαίος επίπεδος πίνακας)Ναι (πολλαπλά βιβλία εργασίας και φύλλα)Αποθήκευση βασισμένη σε κατατμήσειςΈνθετοι πίνακες και αντικείμενα
Τύποι δεδομένωνΚείμενο χωρίς καθορισμένους τύπους δεδομένωνΤυποποιημένα κελιά, τύποι, μορφοποίησηΑυστηροί δυαδικοί τύποι στηλώνΠρωταρχικοί τύποι (συμβολοσειρά, αριθμός, λογική τιμή)
Ανάλυση Μεγάλων ΔεδομένωνΑργή (απαιτεί γραμμική ανάγνωση κάθε γραμμής)Ακατάλληλο για μεγάλα δεδομέναΕξαιρετικά γρήγορη (παράλειψη στηλών & προώθηση κατηγορημάτων)Μέτρια

Συνήθεις τρόποι καταστροφής δεδομένων και οδηγός ανάκτησης δεκαεξαδικών δεδομένων

Οι στήλες μετατοπίζονται προς τα δεξιά ή οι αριθμοί γραμμών δεν ταιριάζουν.

Βασική Αιτία: Ένα πεδίο κειμένου που περιέχει κόμμα χωρίς χαρακτήρα διαφυγής και χωρίς εισαγωγικά.

Ανάκτηση: Το RFC 4180 απαιτεί τα πεδία που περιέχουν κόμματα να περικλείονται σε διπλά εισαγωγικά: "Smith, John".

Οι τονισμένοι χαρακτήρες αποδίδονται ως παράξενα σύμβολα (mojibake όπως é αντί για é) στο Excel.

Βασική Αιτία: Το Excel άνοιξε ένα CSV σε UTF-8 υποθέτοντας την κλασική κωδικοποίηση χαρακτήρων Windows ANSI/CP1252.

Ανάκτηση: Προσθέστε το Byte Order Mark (BOM) των 3 byte UTF-8 (0xEF 0xBB 0xBF) στην αρχή του αρχείου.

Ανάλυση ασφάλειας και διανύσματα επίθεσης στον αναλυτή

Τα αρχεία CSV ανοίγουν απευθείας σε λογισμικό λογιστικών φύλλων όπως το Excel και τα Google Sheets, εκθέτοντας τους χρήστες σε επιθέσεις έγχυσης τύπων (Formula Injection / CSV Injection).

Γνωστά διανύσματα επίθεσης

  • Έγχυση Τύπων: Κελιά που ξεκινούν με '=', '+', '-', ή '@' και εκτελούν μακροεντολές λογιστικού φύλλου ή εντολές DDE (π.χ. '=cmd|' /C calc'!A0').
  • Εξαγωγή δεδομένων μέσω τύπων HYPERLINK() που στέλνουν ευαίσθητα δεδομένα κελιών σε απομακρυσμένους διακομιστές των επιτιθέμενων όταν γίνεται κλικ.

Βέλτιστες αμυντικές πρακτικές: Όταν εξάγετε δεδομένα χρηστών σε CSV, τοποθετήστε ένα απλό εισαγωγικό (') ή χαρακτήρα tab στην αρχή οποιουδήποτε κελιού ξεκινά με '=', '+', '-', ή '@' για να αναγκάσετε την απόδοση απλού κειμένου στο Excel.

Ιστορική Αναδρομή & Ορόσημα

2015Το πρότυπο W3C Model for Tabular Data and Metadata on the Web τυποποιεί το CSV on the Web (CSVW) με περιγραφείς μεταδεδομένων JSON-LD.
2005Το IETF δημοσιεύει το RFC 4180, καθιερώνοντας την επίσημη προδιαγραφή για αρχεία CSV.
1972Ο μεταγλωττιστής IBM Fortran (H Extended) υλοποιεί είσοδο/έξοδο οριοθετημένη με κόμματα.

Κύρια Πλεονεκτήματα

  • Μέγιστη απλότητα: αναγνώσιμο σε οποιονδήποτε επεξεργαστή κειμένου και με δυνατότητα εισαγωγής σε κάθε βάση δεδομένων και πρόγραμμα λογιστικού φύλλου.
  • Εξαιρετικά γρήγορη ροή γραμμή-προς-γραμμή χωρίς τη δημιουργία ενός πλήρους DOM στη μνήμη.
  • Ελάχιστη επιβάρυνση: χωρίς πολύπλοκη σύνταξη ετικετών ή ορισμούς σχημάτων.

Τεχνικοί Περιορισμοί & Μειονεκτήματα

  • Χωρίς τυπικούς τύπους δεδομένων: οι αριθμοί, οι ημερομηνίες, οι τιμές boolean και το κείμενο αποθηκεύονται όλα ως ακατέργαστες συμβολοσειρές.
  • Χωρίς υποστήριξη για πολλαπλά φύλλα, μορφοποίηση κελιών, τύπους ή μεταδεδομένα.
  • Οι διένεξεις οριοθετών (κόμματα μέσα στο κείμενο, κόμματα δεκαδικών σε ευρωπαϊκές τοπικές ρυθμίσεις) προκαλούν συχνά σφάλματα ανάλυσης.

Ενδιαφέροντα Τεχνικά Στοιχεία

  • Σε πολλές ευρωπαϊκές χώρες όπου τα κόμματα χρησιμοποιούνται ως υποδιαιρέσεις δεκαδικών, χρησιμοποιούνται ελληνικά ερωτηματικά (;) αντί για κόμματα ως διαχωριστικά CSV.
  • Ιστορικά, το Microsoft Excel απαιτούσε ένα UTF-8 BOM (0xEF 0xBB 0xBF) για τη σωστή εμφάνιση χαρακτήρων με τόνους εκτός του προτύπου ASCII.
  • Το Εθνικό Σύστημα Υγείας του Ηνωμένου Βασιλείου έχασε, όπως έγινε ευρέως γνωστό, σχεδόν 16.000 αρχεία ιχνηλάτησης επαφών COVID-19 το 2020 επειδή τα δεδομένα εισήχθησαν σε μια παρωχημένη μορφή λογιστικού φύλλου Excel που περιόριζε τις γραμμές σε 65.536.

Συχνές Τεχνικές Ερωτήσεις

Τι είναι το RFC 4180;

Το RFC 4180 είναι το επίσημο πρότυπο IETF για το CSV. Ορίζει ότι τα πεδία που περιέχουν κόμματα, αλλαγές γραμμής ή διπλά εισαγωγικά πρέπει να περικλείονται σε διπλά εισαγωγικά, και τα εσωτερικά εισαγωγικά πρέπει να διαφεύγουν διπλασιάζοντάς τα ("").

Γιατί τα αρχεία CSV ανοίγουν με κατεστραμμένους χαρακτήρες στο Excel;

Οι παλαιότερες εκδόσεις του Microsoft Excel χρησιμοποιούν από προεπιλογή την τοπική σελίδα κώδικα των Windows (όπως Windows-1252) αντί για UTF-8 όταν ανοίγουν αρχεία CSV απευθείας. Η προσθήκη ενός UTF-8 BOM (Byte Order Mark) στην αρχή του αρχείου αναγκάζει το Excel να αποκωδικοποιήσει σωστά το UTF-8.

Τι είναι η Εισαγωγή κακόβουλων τύπων σε αρχεία CSV (Formula Injection);

Η έγχυση CSV συμβαίνει όταν μη έμπιστα δεδομένα χρηστών που περιέχουν χαρακτήρες στην αρχή που ενεργοποιούν τύπους ('=', '+', '-', '@') εξάγονται σε αρχείο λογιστικού φύλλου. Όταν ανοίγει σε λογισμικό όπως το Excel, το λογιστικό φύλλο εκτελεί αυτόματα τον τύπο ή την εντολή δυνατής ανταλλαγής δεδομένων (DDE), εκτελώντας ενδεχομένως εντολές συστήματος ή εξαγάγοντας δεδομένα.

Σχετικά ζεύγη μετατροπής για CSV

XLSX σε CSV

Η μετατροπή ενός φύλλου Excel σε πίνακα CSV εξάγει τα ακατέργαστα δεδομένα σε μια ευρέως χρησιμοποιούμενη μορφή κειμένου, για ευρεία συμβατότητα με λογισμικό.

CSV σε XLSX

Η μετατροπή απλών αρχείων CSV κειμένου σε υπολογιστικά φύλλα XLSX με πολλές δυνατότητες επιτρέπει την προηγμένη μορφοποίηση δεδομένων, τη χρήση τύπων και πολλαπλών φύλλων.

CSV σε SQLITE

Η μετατροπή αρχείων επίπεδου κειμένου σε δομημένες σχεσιακές βάσεις δεδομένων σάς επιτρέπει να εκτελείτε γρήγορα ερωτήματα και να διαχειρίζεστε περίπλοκες σχέσεις δεδομένων.

SQL σε CSV

Μετατρέψτε τα σενάρια δημιουργίας αντιγράφων ασφαλείας σχεσιακών βάσεων δεδομένων σε επίπεδα υπολογιστικά φύλλα για απλή ανάλυση δεδομένων και αναφορές.

HDF5 σε CSV

Η μετατροπή ιεραρχικών συνόλων δεδομένων HDF5 σε επίπεδα αρχεία CSV τηλεμετρίας μετατρέπει πολύπλοκα πολυδιάστατα επιστημονικά αρχεία σε απλές σειρές και στήλες για ανάλυση σε υπολογιστικά φύλλα.

NETCDF σε CSV

Η μετατροπή πολυδιάστατων επιστημονικών πλεγμάτων NetCDF σε επίπεδα αρχεία CSV τηλεμετρίας καθιστά τα πολύπλοκα δεδομένα κλίματος και ωκεανών αναγνώσιμα σε βασικό λογισμικό υπολογιστικών φύλλων.

VCF σε CSV

Η μετατροπή αρχείων vCard σε CSV επαφών μετατρέπει ιεραρχικές κάρτες επαφών σε επίπεδες σειρές υπολογιστικού φύλλου για εύκολες εισαγωγές σε βάσεις δεδομένων.