Package com.landawn.abacus.util
Class CSVUtil
java.lang.Object
com.landawn.abacus.util.CSVUtil
- Since:
- 0.8
- Author:
- Haiyang Li
-
Field Summary
Modifier and TypeFieldDescriptionstatic final BiConsumer<String[],
String> static final BiConsumer<String[],
String> static final JSONParser
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic BiConsumer<String[],
String> static DataSet
loadCSV
(File csvFile, long offset, long count, Throwables.Predicate<String[], E> filter, List<? extends com.landawn.abacus.type.Type> columnTypeList) Load the data from CSV.loadCSV
(File csvFile, long offset, long count, Throwables.Predicate<String[], E> filter, Map<String, ? extends com.landawn.abacus.type.Type> columnTypeMap) Load the data from CSV.static DataSet
loadCSV
(File csvFile, long offset, long count, List<? extends com.landawn.abacus.type.Type> columnTypeList) static DataSet
loadCSV
(File csvFile, long offset, long count, Map<String, ? extends com.landawn.abacus.type.Type> columnTypeMap) static DataSet
loadCSV
(File csvFile, Collection<String> selectColumnNames) static DataSet
loadCSV
(File csvFile, Collection<String> selectColumnNames, long offset, long count) loadCSV
(File csvFile, Collection<String> selectColumnNames, long offset, long count, Throwables.Predicate<String[], E> filter) Load the data from CSV.static DataSet
static DataSet
static DataSet
loadCSV
(InputStream csvInputStream) loadCSV
(InputStream csvInputStream, long offset, long count, Throwables.Predicate<String[], E> filter, List<? extends com.landawn.abacus.type.Type> columnTypeList) Load the data from CSV.loadCSV
(InputStream csvInputStream, long offset, long count, Throwables.Predicate<String[], E> filter, Map<String, ? extends com.landawn.abacus.type.Type> columnTypeMap) Load the data from CSV.static DataSet
loadCSV
(InputStream csvInputStream, long offset, long count, List<? extends com.landawn.abacus.type.Type> columnTypeList) static DataSet
loadCSV
(InputStream csvInputStream, long offset, long count, Map<String, ? extends com.landawn.abacus.type.Type> columnTypeMap) static DataSet
loadCSV
(InputStream csvInputStream, Collection<String> selectColumnNames) static DataSet
loadCSV
(InputStream csvInputStream, Collection<String> selectColumnNames, long offset, long count) loadCSV
(InputStream csvInputStream, Collection<String> selectColumnNames, long offset, long count, Throwables.Predicate<String[], E> filter) Load the data from CSV.static DataSet
loadCSV
(InputStream csvInputStream, List<? extends com.landawn.abacus.type.Type> columnTypeList) static DataSet
loadCSV
(InputStream csvInputStream, Map<String, ? extends com.landawn.abacus.type.Type> columnTypeMap) static DataSet
loadCSV
(Reader csvReader, long offset, long count, Throwables.Predicate<String[], E> filter, List<? extends com.landawn.abacus.type.Type> columnTypeList) Load the data from CSV.loadCSV
(Reader csvReader, long offset, long count, Throwables.Predicate<String[], E> filter, Map<String, ? extends com.landawn.abacus.type.Type> columnTypeMap) Load the data from CSV.static DataSet
loadCSV
(Reader csvReader, long offset, long count, List<? extends com.landawn.abacus.type.Type> columnTypeList) static DataSet
loadCSV
(Reader csvReader, long offset, long count, Map<String, ? extends com.landawn.abacus.type.Type> columnTypeMap) static DataSet
loadCSV
(Reader csvReader, Collection<String> selectColumnNames) static DataSet
loadCSV
(Reader csvReader, Collection<String> selectColumnNames, long offset, long count) loadCSV
(Reader csvReader, Collection<String> selectColumnNames, long offset, long count, Throwables.Predicate<String[], E> filter) Load the data from CSV.static DataSet
static DataSet
static DataSet
static DataSet
loadCSV
(Class<?> entityClass, File csvFile, Collection<String> selectColumnNames) static DataSet
loadCSV
(Class<?> entityClass, File csvFile, Collection<String> selectColumnNames, long offset, long count) loadCSV
(Class<?> entityClass, File csvFile, Collection<String> selectColumnNames, long offset, long count, Throwables.Predicate<String[], E> filter) Load the data from CSV.static DataSet
loadCSV
(Class<?> entityClass, InputStream csvInputStream) static DataSet
loadCSV
(Class<?> entityClass, InputStream csvInputStream, Collection<String> selectColumnNames) static DataSet
loadCSV
(Class<?> entityClass, InputStream csvInputStream, Collection<String> selectColumnNames, long offset, long count) loadCSV
(Class<?> entityClass, InputStream csvInputStream, Collection<String> selectColumnNames, long offset, long count, Throwables.Predicate<String[], E> filter) Load the data from CSV.static DataSet
static DataSet
loadCSV
(Class<?> entityClass, Reader csvReader, Collection<String> selectColumnNames) static DataSet
loadCSV
(Class<?> entityClass, Reader csvReader, Collection<String> selectColumnNames, long offset, long count) loadCSV
(Class<?> entityClass, Reader csvReader, Collection<String> selectColumnNames, long offset, long count, Throwables.Predicate<String[], E> filter) Load the data from CSV.static void
static void
static void
setCSVHeaderParser
(Function<String, String[]> parser) static void
setCSVLineParser
(BiConsumer<String[], String> parser) static <T> Stream<T>
static <T> Stream<T>
stream
(Class<? extends T> targetType, File csvFile, Collection<String> selectColumnNames) static <T> Stream<T>
stream
(Class<? extends T> targetType, File csvFile, Collection<String> selectColumnNames, long offset, long count, Predicate<String[]> filter) static <T> Stream<T>
static <T> Stream<T>
stream
(Class<? extends T> targetType, Reader csvReader, Collection<String> selectColumnNames, boolean closeReaderWhenStreamIsClosed) static <T> Stream<T>
stream
(Class<? extends T> targetType, Reader csvReader, Collection<String> selectColumnNames, long offset, long count, boolean closeReaderWhenStreamIsClosed, Predicate<String[]> filter)
-
Field Details
-
jsonParser
-
CSV_HEADER_PARSER
-
CSV_LINE_PARSER
-
CSV_HEADER_PARSER_BY_SPLITTER
-
CSV_LINE_PARSER_BY_SPLITTER
-
-
Constructor Details
-
CSVUtil
public CSVUtil()
-
-
Method Details
-
setCSVHeaderParser
-
setCSVLineParser
-
resetCSVHeaderParser
public static void resetCSVHeaderParser() -
resetCSVLineParser
public static void resetCSVLineParser() -
getCurrentHeaderParser
-
getCurrentLineParser
-
loadCSV
- Parameters:
csvFile
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(File csvFile, Collection<String> selectColumnNames) throws UncheckedIOException - Parameters:
csvFile
-selectColumnNames
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(File csvFile, Collection<String> selectColumnNames, long offset, long count) throws UncheckedIOException - Parameters:
csvFile
-selectColumnNames
-offset
-count
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static <E extends Exception> DataSet loadCSV(File csvFile, Collection<String> selectColumnNames, long offset, long count, Throwables.Predicate<String[], E> filter) throws UncheckedIOException, ELoad the data from CSV.- Type Parameters:
E
-- Parameters:
csvFile
-selectColumnNames
-offset
-count
-filter
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exceptionE
- the e
-
loadCSV
- Parameters:
csvInputStream
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(InputStream csvInputStream, Collection<String> selectColumnNames) throws UncheckedIOException - Parameters:
csvInputStream
-selectColumnNames
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(InputStream csvInputStream, Collection<String> selectColumnNames, long offset, long count) throws UncheckedIOException - Parameters:
csvInputStream
-selectColumnNames
-offset
-count
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static <E extends Exception> DataSet loadCSV(InputStream csvInputStream, Collection<String> selectColumnNames, long offset, long count, Throwables.Predicate<String[], E> filter) throws UncheckedIOException, ELoad the data from CSV.- Type Parameters:
E
-- Parameters:
csvInputStream
-selectColumnNames
-offset
-count
-filter
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exceptionE
- the e
-
loadCSV
- Parameters:
csvReader
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(Reader csvReader, Collection<String> selectColumnNames) throws UncheckedIOException - Parameters:
csvReader
-selectColumnNames
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(Reader csvReader, Collection<String> selectColumnNames, long offset, long count) throws UncheckedIOException - Parameters:
csvReader
-selectColumnNames
-offset
-count
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static <E extends Exception> DataSet loadCSV(Reader csvReader, Collection<String> selectColumnNames, long offset, long count, Throwables.Predicate<String[], E> filter) throws UncheckedIOException, ELoad the data from CSV.- Type Parameters:
E
-- Parameters:
csvReader
-selectColumnNames
-offset
-count
-filter
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exceptionE
- the e
-
loadCSV
- Parameters:
entityClass
-csvFile
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(Class<?> entityClass, File csvFile, Collection<String> selectColumnNames) throws UncheckedIOException - Parameters:
entityClass
-csvFile
-selectColumnNames
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(Class<?> entityClass, File csvFile, Collection<String> selectColumnNames, long offset, long count) throws UncheckedIOException - Parameters:
entityClass
-csvFile
-selectColumnNames
-offset
-count
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static <E extends Exception> DataSet loadCSV(Class<?> entityClass, File csvFile, Collection<String> selectColumnNames, long offset, long count, Throwables.Predicate<String[], E> filter) throws UncheckedIOException, ELoad the data from CSV.- Type Parameters:
E
-- Parameters:
entityClass
-csvFile
-selectColumnNames
-offset
-count
-filter
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exceptionE
- the e
-
loadCSV
public static DataSet loadCSV(Class<?> entityClass, InputStream csvInputStream) throws UncheckedIOException - Parameters:
entityClass
-csvInputStream
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(Class<?> entityClass, InputStream csvInputStream, Collection<String> selectColumnNames) throws UncheckedIOException - Parameters:
entityClass
-csvInputStream
-selectColumnNames
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(Class<?> entityClass, InputStream csvInputStream, Collection<String> selectColumnNames, long offset, long count) throws UncheckedIOException - Parameters:
entityClass
-csvInputStream
-selectColumnNames
-offset
-count
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static <E extends Exception> DataSet loadCSV(Class<?> entityClass, InputStream csvInputStream, Collection<String> selectColumnNames, long offset, long count, Throwables.Predicate<String[], E> filter) throws UncheckedIOException, ELoad the data from CSV.- Type Parameters:
E
-- Parameters:
entityClass
-csvInputStream
-selectColumnNames
-offset
-count
-filter
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exceptionE
- the e
-
loadCSV
- Parameters:
entityClass
-csvReader
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(Class<?> entityClass, Reader csvReader, Collection<String> selectColumnNames) throws UncheckedIOException - Parameters:
entityClass
-csvReader
-selectColumnNames
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(Class<?> entityClass, Reader csvReader, Collection<String> selectColumnNames, long offset, long count) throws UncheckedIOException - Parameters:
entityClass
-csvReader
-selectColumnNames
-offset
-count
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static <E extends Exception> DataSet loadCSV(Class<?> entityClass, Reader csvReader, Collection<String> selectColumnNames, long offset, long count, Throwables.Predicate<String[], E> filter) throws UncheckedIOException, ELoad the data from CSV.- Type Parameters:
E
-- Parameters:
entityClass
-csvReader
-selectColumnNames
-offset
-count
-filter
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exceptionE
- the e
-
loadCSV
public static DataSet loadCSV(File csvFile, Map<String, ? extends com.landawn.abacus.type.Type> columnTypeMap) throws UncheckedIOException- Parameters:
csvFile
-columnTypeMap
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(File csvFile, long offset, long count, Map<String, ? extends com.landawn.abacus.type.Type> columnTypeMap) throws UncheckedIOException- Parameters:
csvFile
-offset
-count
-columnTypeMap
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static <E extends Exception> DataSet loadCSV(File csvFile, long offset, long count, Throwables.Predicate<String[], E> filter, Map<String, throws UncheckedIOException, E? extends com.landawn.abacus.type.Type> columnTypeMap) Load the data from CSV.- Type Parameters:
E
-- Parameters:
csvFile
-offset
-count
-filter
-columnTypeMap
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exceptionE
- the e
-
loadCSV
public static DataSet loadCSV(InputStream csvInputStream, Map<String, ? extends com.landawn.abacus.type.Type> columnTypeMap) throws UncheckedIOException- Parameters:
csvInputStream
-columnTypeMap
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(InputStream csvInputStream, long offset, long count, Map<String, ? extends com.landawn.abacus.type.Type> columnTypeMap) throws UncheckedIOException- Parameters:
csvInputStream
-offset
-count
-columnTypeMap
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static <E extends Exception> DataSet loadCSV(InputStream csvInputStream, long offset, long count, Throwables.Predicate<String[], E> filter, Map<String, throws UncheckedIOException, E? extends com.landawn.abacus.type.Type> columnTypeMap) Load the data from CSV.- Type Parameters:
E
-- Parameters:
csvInputStream
-offset
-count
-filter
-columnTypeMap
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exceptionE
- the e
-
loadCSV
public static DataSet loadCSV(Reader csvReader, Map<String, ? extends com.landawn.abacus.type.Type> columnTypeMap) throws UncheckedIOException- Parameters:
csvReader
-columnTypeMap
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(Reader csvReader, long offset, long count, Map<String, ? extends com.landawn.abacus.type.Type> columnTypeMap) throws UncheckedIOException- Parameters:
csvReader
-offset
-count
-columnTypeMap
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static <E extends Exception> DataSet loadCSV(Reader csvReader, long offset, long count, Throwables.Predicate<String[], E> filter, Map<String, throws UncheckedIOException, E? extends com.landawn.abacus.type.Type> columnTypeMap) Load the data from CSV.- Type Parameters:
E
-- Parameters:
csvReader
-offset
-count
-filter
-columnTypeMap
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exceptionE
- the e
-
loadCSV
public static DataSet loadCSV(File csvFile, List<? extends com.landawn.abacus.type.Type> columnTypeList) throws UncheckedIOException - Parameters:
csvFile
-columnTypeList
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(File csvFile, long offset, long count, List<? extends com.landawn.abacus.type.Type> columnTypeList) throws UncheckedIOException - Parameters:
csvFile
-offset
-count
-columnTypeList
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static <E extends Exception> DataSet loadCSV(File csvFile, long offset, long count, Throwables.Predicate<String[], E> filter, List<? extends com.landawn.abacus.type.Type> columnTypeList) throws UncheckedIOException, ELoad the data from CSV.- Type Parameters:
E
-- Parameters:
csvFile
-offset
-count
-filter
-columnTypeList
- set the column type to null to skip the column in CSV.- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exceptionE
- the e
-
loadCSV
public static DataSet loadCSV(InputStream csvInputStream, List<? extends com.landawn.abacus.type.Type> columnTypeList) throws UncheckedIOException - Parameters:
csvInputStream
-columnTypeList
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static DataSet loadCSV(InputStream csvInputStream, long offset, long count, List<? extends com.landawn.abacus.type.Type> columnTypeList) throws UncheckedIOException - Parameters:
csvInputStream
-offset
-count
-columnTypeList
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
loadCSV
public static <E extends Exception> DataSet loadCSV(InputStream csvInputStream, long offset, long count, Throwables.Predicate<String[], E> filter, List<? extends com.landawn.abacus.type.Type> columnTypeList) throws ELoad the data from CSV.- Type Parameters:
E
-- Parameters:
csvInputStream
-offset
-count
-filter
-columnTypeList
- set the column type to null to skip the column in CSV.- Returns:
- Throws:
E
- the e
-
loadCSV
public static DataSet loadCSV(Reader csvReader, List<? extends com.landawn.abacus.type.Type> columnTypeList) - Parameters:
csvReader
-columnTypeList
-- Returns:
-
loadCSV
public static DataSet loadCSV(Reader csvReader, long offset, long count, List<? extends com.landawn.abacus.type.Type> columnTypeList) - Parameters:
csvReader
-offset
-count
-columnTypeList
-- Returns:
-
loadCSV
public static <E extends Exception> DataSet loadCSV(Reader csvReader, long offset, long count, Throwables.Predicate<String[], E> filter, List<? extends com.landawn.abacus.type.Type> columnTypeList) throws UncheckedIOException, ELoad the data from CSV.- Type Parameters:
E
-- Parameters:
csvReader
-offset
-count
-filter
-columnTypeList
- set the column type to null to skip the column in CSV.- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exceptionE
- the e
-
stream
-
stream
public static <T> Stream<T> stream(Class<? extends T> targetType, File csvFile, Collection<String> selectColumnNames) -
stream
-
stream
-
stream
public static <T> Stream<T> stream(Class<? extends T> targetType, Reader csvReader, Collection<String> selectColumnNames, boolean closeReaderWhenStreamIsClosed) -
stream
-