CSV, ou valores separados por vírgulas , os arquivos são comumente usados como um formato universal para troca de dados simples , especialmente entre os aplicativos de planilha. O formato é simples . Tomar uma tabela de dados e coloque o nome de cada coluna na primeira linha , com cada nome separado dos outros por uma vírgula . Em seguida , vá até a tabela completa , colocando cada linha em uma linha com cada coluna separados por vírgulas. Java não tem construído em um utilitário para leitura de arquivos CSV , mas isso não deve impedi-lo de usá-los em seu aplicativo Java. O formato simples torna mais fácil para criar seu próprio analisador de arquivo Java CSV. Instruções
1
Crie uma nova classe chamada CSVParser.java colando o seguinte em um arquivo de texto vazio :
importação java.io.File ; java.io.FileNotFoundException importação , importação java.util.ArrayList ; import java.util.Scanner ; javax.swing.table.DefaultTableModel importação; javax.swing.table.TableModel importação;
public class CSVParser {}
2
cole o seguinte " analisar " o método para ele entre os colchetes na classe :
parse TableModel público estático (File f ) throws FileNotFoundException {
cabeçalhos ArrayList = new ArrayList < , string> (); ArrayList oneDdata = new ArrayList ( );
//Pega os cabeçalhos da table.Scanner Linescan = new Scanner ( f); Scanner s = new Scanner ( lineScan.nextLine ()); s.useDelimiter ("," ), enquanto ( s.hasNext ()) { headers.add ( s.next ()); }
//Passe cada linha da tabela e adicionar cada célula para a ArrayListwhile ( lineScan.hasNextLine ()) { s = new Scanner ( lineScan.nextLine ()); s.useDelimiter ( " *") , enquanto ( s.hasNext () ) { oneDdata.add ( s.next ()); }} string [ ] [] dados = new string [ headers.size () ] [ oneDdata.size () /headers.size ()] //Mover o dados em uma matriz de baunilha para que ele possa ser colocado em um table.for (int x = 0; x < headers.size (); x + +) {for (int y = 0; . y < data [0 ] comprimento; y + + ) { dados [x] [y] = oneDdata.remove (0); } } //Crie uma tabela e retornar it.return novas DefaultTableModel (dados , headers.toArray ()); }
< br >
3
cole o seguinte método principal logo abaixo o método de análise a partir do Passo 2:
void main ( string [ ] args ) public static lança FileNotFoundException {//Chame o método de análise e colocar os resultados em uma table.TableModel t = CSVParser.parse (new File (" test.csv "));
//Imprime todas as colunas da tabela , seguido por um novo line.For ( int x = 0 ; x < t.getColumnCount ( ) ; x + + ) { System.out.Print ( t.getColumnName ( x ) + " " ) ; } System.out.println ( ) ;
//imprimir todos os dados a partir do 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 ( );} }