Object - io : ReadableCSVChannel

Represents a ReadableCSVChannel which could be used to read records from CSV file.

Constructor

__init

(ReadableCharacterChannel byteChannel, Separator fs, int nHeaders)

  • fs Separator ,
  • Field separator, which will separate between the records in the CSV file

  • nHeaders int 0
  • Number of headers, which should be skipped prior to reading records

Methods

Indicates whether there's another record, which could be read.

Gets the next record from the CSV file.

Closes a given CSVChannel.

Returns a table, which corresponds to the CSV records.

hasNext

()

returns boolean

Indicates whether there's another record, which could be read.

 boolean hasNext = readableCSVChannel.hasNext();
  • Return Type

    (boolean)
  • True if there's a record

getNext

()

returns string[] | Error | ()

Gets the next record from the CSV file.

 string[]|io:Error record = readableCSVChannel.getNext();
  • Return Type

    (string[] | Error | ())
  • List of fields in the CSV or else an io:Error

close

()

returns Error?

Closes a given CSVChannel.

 io:Error? err = readableCSVChannel.close();
  • Return Type

    (Error?)
  • io:Error if any error occurred

getTable

(typedesc structType)

returns table | Error

Returns a table, which corresponds to the CSV records.

 var tblResult = readableCSVChannel.getTable(Employee);

Parameters

  • structType typedesc
  • The object in which the CSV records should be deserialized

  • Return Type

    (table | Error)
  • Table, which represents the CSV records or else an io:Error