CSV Parser

template <typename _Handler>
class orcus::csv_parser

Inherits from orcus::csv::parser_base

Public Types

typedef _Handler handler_type

Public Functions

csv_parser(const char *p, size_t n, handler_type &hdl, const csv::parser_config &config)
void parse()
struct orcus::csv::parser_config

Run-time configuration object for orcus::csv_parser.

Public Functions

parser_config()

Public Members

std::string delimiters

One or more characters that serve as cell boundaries.

char text_qualifier

A single character used as a text quote value.

bool trim_cell_value

When true, the value of each cell gets trimmed i.e. any leading or trailing white spaces will get ignored.

Parser Handler

class csv_parser_handler

Public Functions

void begin_parse()

Called when the parser starts parsing a stream.

void end_parse()

Called when the parser finishes parsing a stream.

void begin_row()

Called at the beginning of every row.

void end_row()

Called at the end of every row.

void cell(const char *p, size_t n)

Called after every cell is parsed.

Parameters
  • p -

    pointer to the first character of a cell content.

  • n -

    number of characters the cell content consists of.