Προγραμματισμός

Γνώση Υπολογιστών >> Προγραμματισμός >  >> Προγραμματισμός Java

Πώς να διαβάσετε ένα αρχείο CSV Into Java

CSV ή τιμές διαχωρισμένες με κόμματα , τα αρχεία που χρησιμοποιούνται συνήθως ως μια καθολική μορφή για την ανταλλαγή απλά δεδομένα , ιδίως μεταξύ των εφαρμογών υπολογιστικών φύλλων . Η μορφή είναι απλή . Πάρτε ένα πίνακα δεδομένων και τοποθετήστε το όνομα της κάθε στήλης στην πρώτη γραμμή , με κάθε όνομα διαχωρίζονται από τα υπόλοιπα από ένα κόμμα . Στη συνέχεια , πηγαίνετε μέσω της πλήρους πίνακα , τοποθετώντας κάθε γραμμή σε μια γραμμή με κάθε στήλη διαχωρισμένες με κόμμα . Η Java δεν έχει ένα ενσωματωμένο στο βοηθητικό πρόγραμμα για την ανάγνωση αρχείων CSV , αλλά αυτό δεν πρέπει να σας σταματήσει από τη χρήση τους στην εφαρμογή Java σας . Η απλοϊκή μορφή καθιστά εύκολο να δημιουργήσετε το δικό σας Java CSV αρχείο parser . Οδηγίες
Η 1

δημιουργήσετε μια νέα κατηγορία που ονομάζεται CSVParser.java με την επικόλληση το παρακάτω σε ένα άδειο αρχείο κειμένου :

εισαγωγής java.io.File ? Java.io.FileNotFoundException εισαγωγής ? Εισαγωγής java.util.ArrayList ? java.util.Scanner εισαγωγής ? javax.swing.table.DefaultTableModel εισαγωγής ? javax.swing.table.TableModel εισαγωγής ?

δημόσια τάξη CSVParser { } 2
< p > Επικόλληση τα ακόλουθα: « αναλύσει » μέθοδο σε αυτό εντός των παρενθέσεων στην κατηγορία :

δημόσια στατική μεταγλώττιση TableModel ( File στ ) ρίχνει FileNotFoundException {

ArrayList κεφαλίδες = νέα ArrayList < ? String > ( ) ? ArrayList oneDdata = νέα ArrayList ( ) ?

//Πάρτε τις κεφαλίδες του table.Scanner linescan = νέο σαρωτή ( στ) ? Scanner s = new Scanner ( lineScan.nextLine ( ) ) ? s.useDelimiter ( " , ")? ενώ ( s.hasNext ( ) ) { headers.add ( S.next ( ) ) ? }

//Πήγαινε μέσα από κάθε γραμμή του πίνακα και να προσθέσετε σε κάθε κύτταρο στο ArrayListwhile ( lineScan.hasNextLine ( ) ) { s = νέο σαρωτή ( lineScan.nextLine ( ) ) ? s.useDelimiter ( " * " ) ? ενώ ( s.hasNext ( ) ) { oneDdata.add ( S.next ( ) ) ? } } String [ ] [ ] data = new String [ headers.size ( ) ] [ oneDdata.size ( ) /headers.size ( ) ] ? //μετακινήσετε τα δεδομένα σε μια συστοιχία βανίλιας έτσι ώστε να μπορεί να τεθεί σε ένα table.for ( int x = 0 ? χ < headers.size ()? χ + +) { για ( int y = 0 ? . y < δεδομένων [ 0 ] μήκος? y + + ) { δεδομένα [ x ] [ y ] = oneDdata.remove ( 0 ) ? } } //Δημιουργία ενός πίνακα και να επιστρέψει νέο it.return DefaultTableModel ( δεδομένα , headers.toArray ( ) ) ?

} < br >
Η 3

Επικολλήστε τον ακόλουθο κύρια μέθοδος ακριβώς κάτω από το αναλύσει τη μέθοδο από το Βήμα 2 :

δημόσια στατική άκυρη κύρια ( String [ ] args ) ρίχνει FileNotFoundException { //Κλήση αναλύσει τη μέθοδο και να θέσει τα αποτελέσματα σε μια table.TableModel t = CSVParser.parse ( new File ( " test.csv "))?

//Εκτύπωση όλες οι στήλες του πίνακα , που ακολουθείται από ένα νέο line.For ( int x = 0 ? x < t.getColumnCount ( ) ? x + + ) { System.out.print ( t.getColumnName ( x ) + "" ) ? } System.out.println ( ) ?
< p > //Εκτύπωση όλα τα δεδομένα από το table.for ( int x = 0 ? x < t.getRowCount ( ) ? x + + ) { για ( int y = 0 ? y < t.getColumnCount ( ) ? y + + ) { System.out.print ( t.getValueAt ( x , y ) + "" ) ? } System.out.println ( ) ? } }



Η

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα