The CSV protocol handler parses delimiter separated text lines.

For performance reasons: If your input does not contains strings with a delimitter (i.e. there are escaped strings) you should use SimpleCSV protocol handler, which is much faster!

Important: Each CSV-line must end with a newline! Especially important when not using a file for input but e.g. TCPServer transport handler or AMQP/RabbitMQ transport handler.


  • delay: Delay of reading in milliseconds (default 0). DEPRECATED: use scheduler.delay instead if not used together with delayeach
  • nanodelay: Delay of reading in nanoseconds (default 0).
  • delayeach: The number of lines between a delay is used (default 0).
  • readfirstline: Should the first line of the file be ignored (e.g. because of header information) (default: true)
  • debug: If set to true, some additional thinks are available: (default false)
  • dumpEachLine: Dumps lines to the console. if set to 1 each line will be dumped
  • measureEachLine: Measures the processing time between n elements that are dumped
  • maxLines: Stop processing after n elements are read
  • csv.delimiter: The delimiter for splitting the input (Default: , ).

  • csv.textDelimiter: The delimiter for strings (Default: " ). Inside of strings, csv.delimiter is ignored.
  • addlinenumber: Adds the line number (starting with 0) to the beginning of the line. Remember to add a proper attribute to the schema! (default false).
  • csv.floatingFormatter:If used for writing, each double/float value will be formatted using this formatter (default null). See
    • This option can also be used for reading.
    • This option can be used together with:
      • decimalseparator: How is the fraction of the number separated. E.g. for reading german formatted doubles you must use something like:   ['csv.floatingformatter','#,##'], ['decimalseparator',',']
      • exponentseparator: typically E
      • groupingseparator: Typically ",". In german this is "."
  • csv.numberFormatter: If used for writing, each number other than double/float value will be formatted using this formatter (default null). See
  • csv.trim: Removes leading and trailing whitespaces in each element (default false)
  • nullvaluetext: The representation of null values, e.g. '<NULL>' (Default: '')
  • csv.writeheading: Writes the schema as header of the csv, if set to true (Default: false)



CSV Protocol Handler
input = ACCESS({
                            ['filename', 'path to file']


CSV Protocol Handler
CREATE STREAM csv (symbol String, points Double)   
    WRAPPER 'GenericPush'
    TRANSPORT 'File'
    OPTIONS ( 'delimiter' ',', 'textDelimiter' "'", 'readfirstline' 'true', 'delay' '100')
  • No labels