OpenCSV ist eine einfache Java-Klassenbibliothek zum Parsen von CSV-Dateien. Sie kapselt die Ausgabe und das Lesen von CSV-Formatdateien und kann Sonderzeichen im CSV-Format automatisch verarbeiten. Spezifische Verwendung:
CSV-Dateien lesen
1. Verwenden Sie die Iterator-Methode, um den kopierten Code zu lesen. Der Code lautet wie folgt:
CSVReader reader = new CSVReader(new FileReader("yourfile.csv"));
String [] nextLine;
while ((nextLine = reader.readNext()) != null) {
// nextLine[] ist ein Array von Werten aus der Zeile
System.out.println(nextLine[0] + nextLine[1] + "etc...");
}
2. Liste verwenden
Kopieren Sie den Codecode wie folgt:
CSVReader reader = new CSVReader(new FileReader("yourfile.csv"));
List myEntries = reader.readAll();
CSV-Datei schreiben
1. Ähnlich wie FileReader
Kopieren Sie den Codecode wie folgt:
CSVWriterwriter = new CSVWriter(new FileWriter("yourfile.csv"), '/t');
// Geben Sie Ihr Array ein (oder konvertieren Sie Ihre Daten in ein Array)
String[] entries = "first#second#third".split("#");
writeNext(entries);
Writer.close();
Benutzerdefiniertes Trennzeichen
1. Passen Sie das Trennzeichen an. Verwenden Sie beispielsweise den Tabulator als Trennzeichen.
CSVReader reader = new CSVReader(new FileReader("yourfile.csv"), '/t');
2. Sie können den Code auch wie folgt mit Escape-Zeichen kopieren:
CSVReader reader = new CSVReader(new FileReader("yourfile.csv"), '/t', '/'');
3. Beginnen Sie mit der Analyse des kopierten Codes ab der zweiten (n) Zeile. Der Code lautet wie folgt:
CSVReader reader = new CSVReader(new FileReader("yourfile.csv"), '/t', '/'', 2);
SQL-Tabellen sichern
java.sql.ResultSet myResultSet = ....
writeAll(myResultSet, includeHeaders);
Javabeans generieren
Kopieren Sie den Codecode wie folgt:
ColumnPositionMappingStrategy strat = new ColumnPositionMappingStrategy();
strat.setType(YourOrderBean.class);
String[] columns = new String[] {"name", "orderNumber", "id"}; // die zu bindenden Felder in Ihrem JavaBean
strat.setColumnMapping(columns);
CsvToBean csv = new CsvToBean();
Liste list = csv.parse(strat, yourReader);
über