class

CSV::Parser

Inherits Reference / Object

A CSV parser. It lets you consume a CSV row by row.

Most of the time CSV#parse and CSV#each_row are more convenient.

Constructors

new(string_or_io : String | IO, separator : Char = DEFAULT_SEPARATOR, quote_char : Char = DEFAULT_QUOTE_CHAR)

Creates a parser from a String or IO. Optionally takes the optional separator and quote_char arguments for specifying non-standard cell separators and quote characters

Source

Instance methods

each_row

Yields each of the remaining rows as an Array(String).

Source
each_row

Returns an Iterator of Array(String) for the remaining rows.

Source
next_row(array : Array(String)) : Array(String) | Nil

Reads the next row into the given array. Returns that same array, if a row was found, or nil.

Source
next_row

Returns the next row in the CSV, if any, or nil.

Source
parse

Returns the remaining rows.

Source
rewind

Rewinds this parser to the beginning.

Source