Interface ICsvMapReader

  • All Superinterfaces:
    java.lang.AutoCloseable, java.io.Closeable, ICsvReader
    All Known Implementing Classes:
    CsvMapReader

    public interface ICsvMapReader
    extends ICsvReader
    The interface for MapReaders, which read each CSV row into a Map.
    Author:
    Kasper B. Graversen, James Bassett
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      java.util.Map<java.lang.String,​java.lang.String> read​(java.lang.String... nameMapping)
      Reads a row of a CSV file into a Map, using the supplied name mapping to map column values to the appropriate map entries.
      java.util.Map<java.lang.String,​java.lang.Object> read​(java.lang.String[] nameMapping, CellProcessor[] processors)
      Reads a row of a CSV file into a Map, using the supplied name mapping to map column values to the appropriate map entries, and the supplied processors to process the values before adding them to the Map.
      • Methods inherited from interface java.io.Closeable

        close
    • Method Detail

      • read

        java.util.Map<java.lang.String,​java.lang.String> read​(java.lang.String... nameMapping)
                                                             throws java.io.IOException
        Reads a row of a CSV file into a Map, using the supplied name mapping to map column values to the appropriate map entries.
        Parameters:
        nameMapping - an array of Strings linking the CSV columns to their corresponding entry in the Map (the array length should match the number of columns). A null entry in the array indicates that the column should be ignored (e.g. not added to the Map).
        Returns:
        a Map of column names to column values (Strings, as no processing is performed), or null if EOF
        Throws:
        java.io.IOException - if an I/O error occurred
        java.lang.NullPointerException - if nameMapping is null
        SuperCsvException - if there was a general exception while reading/processing
        Since:
        1.0
      • read

        java.util.Map<java.lang.String,​java.lang.Object> read​(java.lang.String[] nameMapping,
                                                                    CellProcessor[] processors)
                                                             throws java.io.IOException
        Reads a row of a CSV file into a Map, using the supplied name mapping to map column values to the appropriate map entries, and the supplied processors to process the values before adding them to the Map.
        Parameters:
        nameMapping - an array of Strings linking the CSV columns to their corresponding entry in the Map (the array length should match the number of columns). A null entry in the array indicates that the column should be ignored (e.g. not added to the Map).
        processors - an array of CellProcessors used to further process data before it is added to the Map (each element in the processors array corresponds with a CSV column - the number of processors should match the number of columns). A null entry indicates no further processing is required (the unprocessed String value will added to the Map).
        Returns:
        a Map of column names to column values, or null if EOF
        Throws:
        java.io.IOException - if an I/O error occurred
        java.lang.NullPointerException - if nameMapping or processors are null
        SuperCsvConstraintViolationException - if a CellProcessor constraint failed
        SuperCsvException - if there was a general exception while reading/processing
        Since:
        1.0