Τι είναι αυτό το εργαλείο;
Τα APIs και οι βάσεις δεδομένων συνήθως επιστρέφουν δεδομένα ως JSON, αλλά τα υπολογιστικά φύλλα, το Excel, τα Google Sheets και τα περισσότερα εργαλεία εισαγωγής δεδομένων αναμένουν CSV. Αυτό το εργαλείο γεφυρώνει αυτό το χάσμα: επικολλήστε έναν πίνακα αντικειμένων JSON (όπως μια απάντηση API), και χτίζει ένα CSV με μία στήλη ανά μοναδικό κλειδί και μία γραμμή ανά αντικείμενο.
Η μετατροπή χειρίζεται τις λεπτομέρειες που σπάνε αφελείς προσεγγίσεις: τιμές που περιέχουν κόμματα ή εισαγωγικά διαφεύγουν σωστά, τα πεδία που λείπουν γίνονται κενά κελιά αντί να προκαλούν κατάρρευση της μετατροπής, και εμφωλευμένα αντικείμενα ή πίνακες μέσα σε ένα πεδίο σειριοποιούνται ως συμβολοσειρά JSON σε αυτό το κελί αντί να απορρίπτονται σιωπηλά.
Η έξοδος ακολουθεί τους κανόνες εισαγωγικών του RFC 4180, το πρότυπο de-facto για CSV: οποιοδήποτε πεδίο περιέχει κόμμα, διπλό εισαγωγικό ή αλλαγή γραμμής τυλίγεται σε διπλά εισαγωγικά, και τα εισαγωγικά μέσα σε ένα πεδίο διπλασιάζονται. Αυτό είναι που κρατά μια τιμή όπως New York, NY σε μία στήλη αντί να τη χωρίζει σιωπηλά σε δύο.
Γιατί να το χρησιμοποιήσετε;
- Αυτόματος εντοπισμός επικεφαλίδων — η λίστα στηλών χτίζεται από την ένωση των κλειδιών σε όλα τα αντικείμενα, οπότε ασυνεπείς εγγραφές δεν σπάνε την έξοδο.
- Σωστή διαφυγή CSV — τιμές με κόμματα, εισαγωγικά ή αλλαγές γραμμής διαφεύγουν σωστά, οπότε το αρχείο ανοίγει καθαρά στο Excel ή στα Google Sheets.
- Χειρίζεται εμφωλευμένα δεδομένα — ένα αντικείμενο ή πίνακας μέσα σε ένα πεδίο σειριοποιείται σε κείμενο JSON αντί να προκαλεί σφάλμα.
- Αντιγραφή στο πρόχειρο ή λήψη ως αρχείο .csv απευθείας.
- 100% τοπικό — τα δεδομένα σας (απαντήσεις API, εξαγόμενες εγγραφές) δεν ανεβαίνουν ποτέ πουθενά.
Πώς χρησιμοποιείται
- Επικολλήστε έναν πίνακα JSON αντικειμένων, π.χ. [{"name":"Alice","age":30},{"name":"Bob","age":25}].
- Κάντε κλικ στο «Μετατροπή σε CSV».
- Ελέγξτε την έξοδο — αντιγράψτε την ή κάντε κλικ στο «Λήψη CSV» για να αποθηκεύσετε ένα αρχείο.
- Ανοίξτε το κατεβασμένο αρχείο στο Excel, στα Google Sheets, ή σε οποιοδήποτε εργαλείο υπολογιστικού φύλλου.
Παράδειγμα
Είσοδος
[{"name":"Alice","age":30},{"name":"Bob","city":"NYC"}]Έξοδος
name,age,city
Alice,30,
Bob,,NYCΠαρατηρήστε πώς τα «city» και «age» γίνονται και τα δύο στήλες παρόλο που κανένα μεμονωμένο αντικείμενο δεν έχει και τα δύο — οι τιμές που λείπουν απλώς αφήνονται κενές.
Πρακτικές συμβουλές
- Μετατροπή απάντησης API για αναφορά υπολογιστικού φύλλου: επικολλήστε τον πίνακα JSON απευθείας από την καρτέλα Δίκτυο ενός προγράμματος περιήγησης ή ένα εργαλείο δοκιμής API, μετατρέψτε, και κατεβάστε — χωρίς ενδιάμεσο script.
- Εργασία με ασυνεπείς εγγραφές (π.χ. προαιρετικά πεδία από εξαγωγή φόρμας): ο αυτόματος εντοπισμός επικεφαλίδων σημαίνει ότι δεν χρειάζεται να συμφιλιώσετε χειροκίνητα τα σχήματα πρώτα.
- Αν το JSON σας είναι ένα μεγάλο αντικείμενο με έναν πίνακα εμφωλευμένο μέσα (π.χ. {"users": [...]}), εξάγετε μόνο το τμήμα του πίνακα (το τμήμα [...]) πριν το επικολλήσετε εδώ.
Γιατί έχει σημασία η σειρά και η πληρότητα των στηλών
Ένα λεπτό αλλά κοινό σφάλμα CSV συμβαίνει όταν τα δεδομένα εξάγονται γράφοντας χειροκίνητα επικεφαλίδες πρώτα και ελπίζοντας ότι κάθε γραμμή θα ταιριάζει: αν η γραμμή 50 από 1000 έχει ένα επιπλέον πεδίο που καμία προηγούμενη γραμμή δεν είχε, ένας αφελής writer CSV γραμμή-προς-γραμμή είτε το πεδίο απορρίπτεται σιωπηλά είτε μετατοπίζει κάθε επόμενη στήλη εκτός ευθυγράμμισης. Αυτό το εργαλείο αποφεύγει αυτόν τον τρόπο αποτυχίας σαρώνοντας πρώτα κάθε αντικείμενο στον πίνακα για να χτίσει την πλήρη, σωστή γραμμή επικεφαλίδας πριν γράψει έστω και μία γραμμή εξόδου — οπότε ένα πεδίο που εμφανίζεται μόνο μία φορά, στο τελευταίο ακριβώς αντικείμενο, εξακολουθεί να παίρνει τη δική του στήλη και η τιμή κάθε άλλης γραμμής γι' αυτό εμφανίζεται σωστά ως κενή αντί να καταστρέφει τη δομή της γραμμής.
Συχνές ερωτήσεις
Λειτουργεί αυτό με ένα μεμονωμένο αντικείμενο JSON αντί για πίνακα;
Περιμένει έναν πίνακα — τυλίξτε ένα μεμονωμένο αντικείμενο σε αγκύλες, π.χ. αλλάξτε το {"name":"Alice"} σε [{"name":"Alice"}], και θα μετατραπεί σε CSV μίας γραμμής.
Τι συμβαίνει σε εμφωλευμένα αντικείμενα ή πίνακες μέσα σε ένα πεδίο;
Σειριοποιούνται ως συμβολοσειρά JSON μέσα σε αυτό το κελί (π.χ. ένα πεδίο που περιέχει {"a":1} γίνεται το κείμενο "{""a"":1}" στο CSV, σωστά διαφυγόμενο με εισαγωγικά) αντί να προκαλεί σφάλμα ή να απορρίπτεται. Αν χρειάζεστε εμφωλευμένα δεδομένα να ισοπεδωθούν σε ξεχωριστές στήλες, αυτό απαιτεί ένα διαφορετικό εργαλείο ειδικό για το σχήμα σας.
Ανεβαίνουν τα δεδομένα μου σε διακομιστή;
Όχι. Η μετατροπή τρέχει ως JavaScript εξ ολοκλήρου στο πρόγραμμα περιήγησής σας — τίποτα δεν αποστέλλεται πουθενά, κάτι που το κάνει ασφαλές για χρήση με εξαγόμενα δεδομένα πελατών ή επιχείρησης.
Γιατί το CSV μου έχει κενά κελιά;
Αν μερικά αντικείμενα στον πίνακά σας δεν έχουν ένα κλειδί που έχουν άλλα, αυτή η στήλη υπάρχει αλλά το κελί μένει κενό για τα αντικείμενα που δεν το έχουν — αυτό διατηρεί όλα τα δεδομένα σας αντί να σταματά με σφάλμα σε ασυνεπείς εγγραφές.
Θα σπάσουν το CSV οι τιμές με κόμματα;
Όχι. Οποιαδήποτε τιμή περιέχει κόμμα, χαρακτήρα εισαγωγικού, ή αλλαγή γραμμής τυλίγεται αυτόματα σε εισαγωγικά (με τα εσωτερικά εισαγωγικά να διαφεύγουν), οπότε ανοίγει σωστά στο Excel και στα Google Sheets.