Documentation of 'org.supercsv.prefs.CsvPreference' Java class
CsvPreference
org.supercsv.prefs

Class CsvPreference



  • public final class CsvPreference
    extends java.lang.Object
    Before reading or writing CSV files, you must supply the reader/writer with some preferences.

    Please note: the end of line symbols are only used for writing.

    The following predefined configurations are available:

    Constant Quote character Delimiter character End of line symbols
    STANDARD_PREFERENCE " , \r\n
    EXCEL_PREFERENCE " , \n
    EXCEL_NORTH_EUROPE_PREFERENCE " ; \n
    TAB_PREFERENCE " \t \n

    By default, spaces surrounding an unquoted cell are treated as part of the data. In versions of Super CSV prior to 2.0.0 this wasn't the case, and any surrounding spaces that weren't within quotes were ignored when reading (and quotes were automatically added to Strings containing surrounding spaces when writing).

    If you wish enable this functionality again, then you can create a CsvPreference with the surroundingSpacesNeedQuotes flag set to true (the default is false). This means that surrounding spaces without quotes will be trimmed when reading, and quotes will automatically be added for Strings containing surrounding spaces when writing.

    You can apply the surroundingSpacesNeedQuotes property to an existing preference as follows:
    private static final CsvPreference STANDARD_SURROUNDING_SPACES_NEED_QUOTES = new CsvPreference.Builder(CsvPreference.STANDARD_PREFERENCE).surroundingSpacesNeedQuotes(true).build();

    You can also create your own preferences. For example if your file was pipe-delimited, you could use the following:
    private static final CsvPreference PIPE_DELIMITED = new CsvPreference.Builder('"', '|', "\n").build();

    Other preferences incude:

    • Field Detail

      • STANDARD_PREFERENCE

        public static final CsvPreference STANDARD_PREFERENCE
        Ready to use configuration that should cover 99% of all usages.
      • EXCEL_PREFERENCE

        public static final CsvPreference EXCEL_PREFERENCE
        Ready to use configuration for Windows Excel exported CSV files.
      • EXCEL_NORTH_EUROPE_PREFERENCE

        public static final CsvPreference EXCEL_NORTH_EUROPE_PREFERENCE
        Ready to use configuration for north European excel CSV files (columns are separated by ";" instead of ",")
      • TAB_PREFERENCE

        public static final CsvPreference TAB_PREFERENCE
        Ready to use configuration for tab-delimited files.
    • Method Detail

      • getDelimiterChar

        public int getDelimiterChar()
        Returns the delimiter character
        Returns:
        the delimiter character
      • getEndOfLineSymbols

        public java.lang.String getEndOfLineSymbols()
        Returns the end of line symbols
        Returns:
        the end of line symbols
      • getQuoteChar

        public int getQuoteChar()
        Returns the quote character
        Returns:
        the quote character
      • isSurroundingSpacesNeedQuotes

        public boolean isSurroundingSpacesNeedQuotes()
        Returns the surroundingSpacesNeedQuotes flag.
        Returns:
        the surroundingSpacesNeedQuotes flag
      • getEncoder

        public CsvEncoder getEncoder()
        Returns the CSV encoder.
        Returns:
        the CSV encoder
      • getQuoteMode

        public QuoteMode getQuoteMode()
        Returns the quote mode.
        Returns:
        the quote mode
      • getCommentMatcher

        public CommentMatcher getCommentMatcher()
        Returns the comment matcher.
        Returns:
        the comment matcher

DMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.