Class Limits

java.lang.Object
de.siegmar.fastcsv.util.Limits

public final class Limits extends Object
The Limits class defines the maximum limits for various fields and records in a CSV file.

Limits can be overridden by setting system properties. Example use:

 System.setProperty("fastcsv.max.field.size", "8388608");
 System.setProperty("fastcsv.max.field.count", "8192");

Or using VM options:

-Dfastcsv.max.field.count=8388608 -Dfastcsv.max.field.count=8192
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    The MAX_FIELDS_SIZE constant defines the maximum number of fields per record.
    static final int
    The MAX_FIELD_SIZE constant defines the maximum size for a single field in a CSV file.
    static final int
    The MAX_RECORD_SIZE constant defines the maximum size for all fields combined in a CSV record.
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    private
     
  • Method Summary

    Modifier and Type
    Method
    Description
    (package private) static int
    getIntProperty(String key, int defaultValue)
    Retrieves the system property value if presented, otherwise the default value is returned.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • MAX_FIELD_SIZE

      public static final int MAX_FIELD_SIZE
      The MAX_FIELD_SIZE constant defines the maximum size for a single field in a CSV file. The value is set to 16,777,216 characters (16 to 64 MiB depending on the circumstance of multibyte character utilization).

      The default value can be overridden by setting the system property fastcsv.max.field.size (e.g., using -Dfastcsv.max.field.size=8388608).

    • MAX_FIELD_COUNT

      public static final int MAX_FIELD_COUNT
      The MAX_FIELDS_SIZE constant defines the maximum number of fields per record. The value is set to 16,384.

      The default value can be overridden by setting the system property fastcsv.max.field.count (e.g., using -Dfastcsv.max.field.count=8192).

    • MAX_RECORD_SIZE

      public static final int MAX_RECORD_SIZE
      The MAX_RECORD_SIZE constant defines the maximum size for all fields combined in a CSV record. The value is set to four times of MAX_FIELD_SIZE.
  • Constructor Details

    • Limits

      private Limits()
  • Method Details

    • getIntProperty

      static int getIntProperty(String key, int defaultValue)
      Retrieves the system property value if presented, otherwise the default value is returned. If the property cannot be parsed as an integer, an IllegalArgumentException is thrown.
      Parameters:
      key - The system property key.
      defaultValue - The default value to use if the system property is not set or is invalid.
      Returns:
      The system property value as an integer or the default value if the property is not set or is invalid.
      Throws:
      IllegalArgumentException - If the system property value cannot be parsed as an integer.