Package org.djutils.data.csv
Class CsvData
- java.lang.Object
- 
- org.djutils.data.csv.CsvData
 
- 
 public final class CsvData extends Object CsvData takes care of reading and writing of table data in CSV format. The class can be used, e.g., as follows:Table Table = new ListTable("data", "Table", columns); Writer writer = new FileWriter("c:/data/data.csv"); Writer metaWriter = new FileWriter("c:/data/data.meta.csv"); CsvData.writeData(writer, metaWriter, Table);Copyright (c) 2020-2023 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved. 
 BSD-style license. See DJUTILS License.- Author:
- Alexander Verbraeck, Peter Knoppers, Wouter Schakel
 
- 
- 
Method SummaryAll Methods Static Methods Concrete Methods Modifier and Type Method Description static TablereadData(Reader reader, Reader metaReader)Read the data from the CSV-file into the data table.static TablereadData(Reader reader, Reader metaReader, char separator, char quotechar)Read the data from the CSV-file into the data table.static TablereadData(String filename, String metaFilename)Read the data from the CSV-file into the data table.static TablereadZippedData(String fileName, String csvName, String metaName)Read the data from a CSV-file inside a zip file.static TablereadZippedData(String fileName, String csvName, String metaName, char separator, char quotechar)Read the data from a CSV-file inside a zip file.static voidwriteData(Writer writer, Writer metaWriter, Table table)Write the data from the data table in CSV format.static voidwriteData(Writer writer, Writer metaWriter, Table table, char separator, char quotechar, de.siegmar.fastcsv.writer.LineDelimiter lineDelimiter)Write the data from the data table in CSV format.static voidwriteData(String filename, String metaFilename, Table table)Write the data from the data table in CSV format.static voidwriteZippedData(CompressedFileWriter writer, String csvName, String metaName, Table table)Write the data from the data table in CSV format.static voidwriteZippedData(CompressedFileWriter writer, String csvName, String metaName, Table table, char separator, char quotechar, de.siegmar.fastcsv.writer.LineDelimiter lineDelimiter)Write the data from the data table in CSV format.
 
- 
- 
- 
Method Detail- 
writeDatapublic static void writeData(Writer writer, Writer metaWriter, Table table, char separator, char quotechar, de.siegmar.fastcsv.writer.LineDelimiter lineDelimiter) throws IOException, TextSerializationException Write the data from the data table in CSV format. The writer writes the data, whereas the metaWriter writes the metadata. The metadata consists of a CSV file with three columns: the id, the description, and the class. The first row after the header contains the id, description, and class of the data table itself. The second and further rows contain information about the columns of the data table.- Parameters:
- writer- Writer; the writer that writes the data, e.g. to a file
- metaWriter- Writer; the writer for the metadata
- table- Table; the data table to write
- separator- char; the delimiter to use for separating entries
- quotechar- char; the character to use for quoted elements
- lineDelimiter- String; the line terminator to use, can be LineDelimiter.CR, LF, CRLF or PLATFORM
- Throws:
- IOException- on I/O error when writing the data
- TextSerializationException- on unknown data type for serialization
 
 - 
writeZippedDatapublic static void writeZippedData(CompressedFileWriter writer, String csvName, String metaName, Table table, char separator, char quotechar, de.siegmar.fastcsv.writer.LineDelimiter lineDelimiter) throws IOException, TextSerializationException Write the data from the data table in CSV format. The data file and meta data file are zipped. The metadata consists of a CSV file with three columns: the id, the description, and the class. The first row after the header contains the id, description, and class of the data table itself. The second and further rows contain information about the columns of the data table.- Parameters:
- writer- Writer; the writer that writes the data, e.g. to a file
- csvName- String; name of the csv file within the zip file
- metaName- String; name of the meta data file within the zip file
- table- Table; the data table to write
- separator- char; the delimiter to use for separating entries
- quotechar- char; the character to use for quoted elements
- lineDelimiter- String; the line terminator to use, can be LineDelimiter.CR, LF, CRLF or PLATFORM
- Throws:
- IOException- on I/O error when writing the data
- TextSerializationException- on unknown data type for serialization
 
 - 
writeZippedDatapublic static void writeZippedData(CompressedFileWriter writer, String csvName, String metaName, Table table) throws IOException, TextSerializationException Write the data from the data table in CSV format. The data file and meta data file are zipped. The metadata consists of a CSV file with three columns: the id, the description, and the class. The first row after the header contains the id, description, and class of the data table itself. The second and further rows contain information about the columns of the data table.- Parameters:
- writer- Writer; the writer that writes the data, e.g. to a file
- csvName- String; name of the CSV file within the zip file
- metaName- String; name of the meta data file within the zip file
- table- Table; the data table to write
- Throws:
- IOException- on I/O error when writing the data
- TextSerializationException- on unknown data type for serialization
 
 - 
writeDatapublic static void writeData(Writer writer, Writer metaWriter, Table table) throws IOException, TextSerializationException Write the data from the data table in CSV format. The writer writes the data, whereas the metaWriter writes the metadata. The metadata consists of a CSV file with three columns: the id, the description, and the class. The first row after the header contains the id, description, and class of the data table itself. The second and further rows contain information about the columns of the data table. The line ending used will be CRLF which is RFC 4180 compliant.- Parameters:
- writer- Writer; the writer that writes the data, e.g. to a file
- metaWriter- Writer; the writer for the metadata
- table- Table; the data table to write
- Throws:
- IOException- on I/O error when writing the data
- TextSerializationException- on unknown data type for serialization
 
 - 
writeDatapublic static void writeData(String filename, String metaFilename, Table table) throws IOException, TextSerializationException Write the data from the data table in CSV format.- Parameters:
- filename- String; the file name to write the data to
- metaFilename- String; the file name to write the metadata to
- table- Table; the data table to write
- Throws:
- IOException- on I/O error when writing the data
- TextSerializationException- on unknown data type for serialization
 
 - 
readDatapublic static Table readData(Reader reader, Reader metaReader, char separator, char quotechar) throws IOException, TextSerializationException Read the data from the CSV-file into the data table. Use the metadata to reconstruct the data table.- Parameters:
- reader- Reader; the reader that can read the data, e.g. from a file
- metaReader- Reader; the writer for the metadata
- separator- char; the delimiter to use for separating entries
- quotechar- char; the character to use for quoted elements
- Returns:
- Table the data table reconstructed from the meta data and filled with the data
- Throws:
- IOException- when the CSV data was not formatted right
- TextSerializationException- on unknown data type for serialization
 
 - 
readDatapublic static Table readData(Reader reader, Reader metaReader) throws IOException, TextSerializationException Read the data from the CSV-file into the data table. Use the metadata to reconstruct the data table.- Parameters:
- reader- Reader; the reader that can read the data, e.g. from a file
- metaReader- Reader; the writer for the metadata
- Returns:
- Table the data table reconstructed from the meta data and filled with the data
- Throws:
- IOException- when the CSV data was not formatted right
- TextSerializationException- on unknown data type for serialization
 
 - 
readDatapublic static Table readData(String filename, String metaFilename) throws IOException, TextSerializationException Read the data from the CSV-file into the data table. Use the metadata to reconstruct the data table.- Parameters:
- filename- String; the file name to read the data from
- metaFilename- String; the file name to read the metadata from
- Returns:
- Table the data table reconstructed from the meta data and filled with the data
- Throws:
- IOException- when the CSV data was not formatted right
- TextSerializationException- on unknown data type for serialization
 
 - 
readZippedDatapublic static Table readZippedData(String fileName, String csvName, String metaName) throws IOException, TextSerializationException Read the data from a CSV-file inside a zip file. The metadata file should be in the same zipfile. Use the metadata to reconstruct the data table.- Parameters:
- fileName- String; file name of the zip file
- csvName- String; name of the CSV-file, without path
- metaName- String; name of the metadata file, without path
- Returns:
- Table the data table reconstructed from the meta data and filled with the data
- Throws:
- IOException- when the CSV data was not formatted right
- TextSerializationException- on unknown data type for serialization
 
 - 
readZippedDatapublic static Table readZippedData(String fileName, String csvName, String metaName, char separator, char quotechar) throws IOException, TextSerializationException Read the data from a CSV-file inside a zip file. The metadata file should be in the same zipfile. Use the metadata to reconstruct the data table.- Parameters:
- fileName- String; file name of the zip file
- csvName- String; name of the CSV-file, without path
- metaName- String; name of the metadata file, without path
- separator- char; the delimiter to use for separating entries
- quotechar- char; the character to use for quoted elements
- Returns:
- Table the data table reconstructed from the meta data and filled with the data
- Throws:
- IOException- when the CSV data was not formatted right
- TextSerializationException- on unknown data type for serialization
 
 
- 
 
-