Creare una nuova classe denominata CSVParser.java incollando il seguente in un file di testo vuoto :
import java.io.File ; java.io.FileNotFoundException importazione; importazione java.util.ArrayList ; importazione java.util.Scanner , l'importazione javax.swing.table.DefaultTableModel ; javax.swing.table.TableModel importazione;
class CSVParser pubblico { }
2
Incolla il seguente metodo "parse " in esso tra le parentesi della classe :
pubblico parse TableModel statico ( File f ) throws FileNotFoundException {
intestazioni //Ottiene le intestazioni del LineScan = new Scanner table.Scanner ( f) ; Scanner s = new Scanner ( lineScan.nextLine ()); s.useDelimiter ( " , "); while ( s.hasNext ( ) ) { headers.add ( s.next ( ) );} //Passare attraverso ogni riga della tabella e aggiungere ogni cella al ArrayListwhile ( lineScan.hasNextLine ( ) ) { s = new Scanner ( lineScan.nextLine ()); s.useDelimiter ( " *") , mentre ( s.hasNext ( ) ( ) { oneDdata.add s.next ( ) );} } String [] [ ] dati = new String [ headers.size ()] [ oneDdata.size ( ) /headers.size ( ) ] ; //spostare i dati in una matrice di vaniglia in modo che possa essere messo in un table.for ( int x = 0; x < headers.size (); x + + ) {for ( int y = 0; . y < dati [ 0 ] lunghezza ; y + + ) { dati [ x ] [ y ] = oneDdata.remove ( 0 ) ; } } //Creazione di un tavolo e di ritorno it.return nuovo DefaultTableModel ( dati , headers.toArray ()); } Incollare il seguente metodo principale appena sotto il metodo parse dal Punto 2 : public static void main ( String [] args ) throws FileNotFoundException { //Chiama il metodo parse e mettere i risultati in un table.TableModel t = CSVParser.parse ( new File ( " test.csv ")); //Stampa tutte le colonne della tabella , seguito da un nuovo line.For (int x = 0; x < t.getColumnCount (); x + + ) { System.out.print ( t.getColumnName ( x ) + " ");} System.out.println ( ) ; //Stampa tutti i dati dal table.for ( int x = 0; x < t.getRowCount (); x + + ) {for ( int y = 0; y < t.getColumnCount (); y + + ) { System.out.print ( t.getValueAt ( x , y) + ""); } System.out.println (); } }
3
Informazioni correlate
Programmazione © www.354353.com