CSV ou Comma Separated Value, les fichiers sont couramment utilisés comme un format universel pour échanger des données simples, en particulier entre les applications de feuille de calcul. Le format est simple. Prenez une table de données et de placer le nom de chaque colonne sur la première ligne, avec chaque nom séparé des autres par une virgule. Ensuite, passez par le tableau complet, plaçant chaque rangée sur une ligne avec chaque colonne séparés par des virgules. Java n`a pas construit dans l`utilitaire de lecture de fichiers CSV, mais cela ne devrait pas vous empêcher de les utiliser dans votre application Java. Le format simpliste, il est facile de créer votre propre fichier analyseur Java CSV.
Créer une nouvelle classe nommée CSVParser.java en collant le suivant dans un fichier texte vide:
import java.io.File-
import java.io.FileNotFoundException-
import java.util.ArrayList-
import java.util.Scanner-
import javax.swing.table.DefaultTableModel-
import javax.swing.table.TableModel;public class CSVParser {
9-
}Collez le texte suivant "analyser" méthode en elle entre les crochets dans la classe:
public static TableModel parse (fichier f) throws FileNotFoundException {
ArrayList
headers = new ArrayList () -
ArrayListoneDdata = new ArrayList () - 9- 9 - // Obtenez les en-têtes du tableau.
Scanner LINESCAN = new Scanner (f) -
= New Scanner Scanner (lineScan.nextLine ()) -
s.useDelimiter ("-," -) -
tandis que (s.hasNext ()) {
headers.add (s.next ()) -
}9- 9 - // Aller à travers chaque ligne de la table et ajouter chaque cellule à l`ArrayList
tandis que (lineScan.hasNextLine ()) {
s = new Scanner (lineScan.nextLine ()) -
s.useDelimiter ("- *" -) -
tandis que (s.hasNext ()) {
oneDdata.add (s.next ()) -
}
}
String [] [] data = new String [headers.size ()] [oneDdata.size () / headers.size ()] -9-
9- 9 - // Déplacer les données dans un tableau de vanille de sorte qu`il peut être mis dans une table.for (int x = 0- x lt; headers.size () - x ++) {
for (int y = 0- y lt; données [0] y .length- ++) {
données [x] [y] = oneDdata.remove (0) -
}
}9- 9-
9- 9 - // Créer une table et le retourner.return new DefaultTableModel (données, headers.toArray ());
}
Coller la principale méthode suivante juste en dessous de la méthode d`analyse de l`étape 2:
main (String [] args) public static void plaids FileNotFoundException {
9 - // Appel de la méthode d`analyse et de mettre les résultats dans un tableau.
TableModel t = CSVParser.parse (new File ("-test.csv" -)) -9- 9 - // Imprimer toutes les colonnes de la table, suivi d`une nouvelle ligne.
for (int x = 0- x lt; t.getColumnCount () - x ++) {
System.out.print (t.getColumnName (x) + "- " -) -
}
System.out.println () -9- 9 - // Imprimer toutes les données de la table.
for (int x = 0- x lt; t.getRowCount () - x ++) {
for (int y = 0- y lt; t.getColumnCount () - y ++) {
System.out.print (t.getValueAt (x, y) + "- " -) -
}
System.out.println () -
}}