CSV σε Μετατροπέας JSON
Μετατρέψτε δεδομένα ή αρχεία CSV σε μορφή JSON αμέσως στο πρόγραμμα περιήγησής σας. Υποστηρίζει προσαρμοσμένους οριοθέτες, ανίχνευση κεφαλίδων και όμορφη μορφοποίηση.
Επιλέξτε αρχείο CSV
ή σύρετε και αποθέστε εδώ
Μετατρέψτε δεδομένα ή αρχεία CSV σε μορφή JSON αμέσως στο πρόγραμμα περιήγησής σας. Υποστηρίζει προσαρμοσμένους οριοθέτες, ανίχνευση κεφαλίδων και όμορφη μορφοποίηση.
ή σύρετε και αποθέστε εδώ
Το CSV (τιμές διαχωρισμένες με κόμμα) και το JSON (Σημειογραφία αντικειμένου JavaScript) είναι και οι δύο πανταχού παρούσες μορφές ανταλλαγής δεδομένων, αλλά περιγράφουν τα δεδομένα διαφορετικά. Το CSV είναι επίπεδο και πίνακα: μια σειρά κεφαλίδας ορίζει ονόματα πεδίων και κάθε επόμενη σειρά περιέχει τις τιμές μιας εγγραφής. Το JSON είναι ιεραρχικό: τα δεδομένα είναι δομημένα ως αντικείμενα (ζεύγη κλειδιών-τιμών) και πίνακες, υποστηρίζοντας ένθετους και πλουσιότερους τύπους. Η μετατροπή CSV σε JSON συνήθως σημαίνει μετατροπή κάθε σειράς CSV σε αντικείμενο JSON του οποίου τα κλειδιά προέρχονται από τη σειρά κεφαλίδας και του οποίου οι τιμές είναι τα κελιά της σειράς.
Αυτός ο μετατροπέας αναλύει το CSV χρησιμοποιώντας το PapaParse, την πιο αξιόπιστη βιβλιοθήκη CSV στο οικοσύστημα JavaScript. Το PapaParse χειρίζεται τις ιδιορρυθμίες που κάνουν το CSV απατηλά δύσκολο: πεδία εισαγωγικά που περιέχουν κόμμα, εισαγωγικά διαφυγής μέσα σε εισαγωγικά πεδία, μικτές καταλήξεις γραμμών, προαιρετικούς δείκτες BOM και πεδία που περιέχουν νέες γραμμές. Η έξοδος είναι δομημένο JSON, μορφοποιημένο με εσοχή δύο διαστημάτων από προεπιλογή για αναγνωσιμότητα.
Υποστηρίζονται δύο μορφές εξόδου. Το Array-of-objects (η προεπιλογή) παράγει [{header1: value1, header2: value2}, ...], το πιο κοινό σχήμα JSON για δεδομένα σε πίνακα. Το Array-of-arrays παράγει [[header1, header2], [value1, value2], ...], διατηρώντας τη σειρά στηλών χωρίς να χρησιμοποιεί ονόματα κεφαλίδων ως κλειδιά.
Τα περισσότερα σύγχρονα API και εφαρμογές μιλούν JSON. Η φόρτωση δεδομένων από μια εξαγωγή CSV — μια αναφορά πωλήσεων, μια λίστα επαφών, ένα απόσπασμα βάσης δεδομένων — σε μια εφαρμογή JavaScript, REST API ή βάση δεδομένων NoSQL συνήθως απαιτεί πρώτα να περάσετε από το JSON. Η μετατροπή είναι επίσης το πρώτο βήμα για πολλούς μετασχηματισμούς δεδομένων, καθώς το JSON είναι ευκολότερο να χειριστείτε μέσω προγραμματισμού από το CSV.
Η δομή του JSON ξεκλειδώνει επίσης χαρακτηριστικά που το CSV δεν μπορεί να αναπαραστήσει. Αντικείμενα με ένθετες ιδιότητες, πίνακες μεταβαλλόμενου μήκους ανά εγγραφή και πληροφορίες ρητού τύπου (συμβολοσειρές έναντι αριθμών έναντι δυαδικών) γίνονται όλα διαθέσιμα μόλις τα δεδομένα είναι σε JSON. Υπάρχουν εναλλακτικές λύσεις CSV όπως το TSV, αλλά μοιράζονται τον ίδιο περιορισμό επιπεδότητας.
Επικολλήστε ή ανεβάστε το CSV σας, αποκτήστε JSON.
Το PapaParse εφαρμόζει το RFC 4180 (την προδιαγραφή CSV) συν τις επεκτάσεις για τις παραλλαγές που περιέχουν τα αρχεία CSV του πραγματικού κόσμου. Τα πεδία με εισαγωγικά μπορούν να περιλαμβάνουν κόμματα, νέες γραμμές και χαρακτήρες εισαγωγικών (διαφυγής με διπλασιασμό). Οι κεφαλίδες, όταν υπάρχουν, εντοπίζονται από την πρώτη σειρά. Οι αριθμητικές και οι δυαδικές τιμές μπορούν να πληκτρολογηθούν αυτόματα (να μετατραπούν σε πραγματικούς αριθμούς ή σε δυαδικούς αριθμούς αντί σε συμβολοσειρές) ή να διατηρηθούν ως συμβολοσειρές.
Η έξοδος JSON δημιουργείται χρησιμοποιώντας το JSON.stringify με προαιρετική εσοχή. Οι συμβολοσειρές διαφεύγουν για τη σύνταξη JSON (πίσω κάθετο, εισαγωγικά, χαρακτήρες ελέγχου) και οι δομές χρησιμοποιούν τη μορφή που ζητήθηκε (πίνακας αντικειμένων ή πίνακας πινάκων).
Αντιμετώπιση περιπτώσεων άκρων: BOM κατά την έναρξη του αρχείου, μικτές καταλήξεις γραμμών (\n έναντι \r\n), κενά κελιά (που αποδίδονται ως κενές συμβολοσειρές ή μηδενικά ανάλογα με τις ρυθμίσεις), νέες γραμμές μετάδοσης και σειρές με διαφορετικό αριθμό πεδίων. Η στιβαρότητα του PapaParse το καθιστά την τυπική βιβλιοθήκη JavaScript CSV.