CsvUtil::CsvStringWriter Class Reference

The CsvStringWriter class for in-memory string CSV creation. More...

Inheritance diagram for CsvUtil::CsvStringWriter:
[legend]

## Public Member Functions

| constructor (*hash opts)
| creates the CsvStringWriter single-type mode with content in the memory More...
| constructor (hash spec, hash opts)
| creates the CsvStringWriter single-type mode with content in the memory More...
string | getContent ()
| Get the current in-memory content as a string.
string | write (Qore::AbstractIterator iterator)
| Stream iterator and return a CSV-formatted output string. More...
string | write (list l)
| Stream the contents of the list and return CSV-formatted output as a string. More...
Public Member Functions inherited from CsvUtil::AbstractCsvWriter
| constructor (string n_errname, *hash n_opts)
| Creates the AbstractCsvWriter in single-type mode. More...
| constructor (string n_errname, hash spec, hash n_opts)
| Creates the AbstractCsvWriter in single-type mode. More...
| write (Qore::AbstractIterator iterator)
| Stream an iterator into the output. More...
| write (Qore::SQL::SQLStatement iterator)
| Stream an iterator into the output. More...
| write (list l)
| Stream the contents of the list into the output. More...
| writeLine (list values)
| Write a line with a list of values; data are checked against column rules. More...
| writeLine (hash values)
| Write a line with headers-values hash. More...
| writeLine (string type, list values)
| Write a line with headers-values list. More...
| writeLine (string type, hash values)
| Write a line for a specific record from a hash to the output. More...

## Private Member Functions

| writeRawLine (list values)
| This method must be overridden in child classes to provide the output implementation.

## Detailed Description

The CsvStringWriter class for in-memory string CSV creation.

See also
  - CsvWriter for a stream-based class providing the same functionality as this class in a more generic way

## Member Function Documentation

## constructor() [1/2]

CsvUtil::CsvStringWriter::constructor | ( | *hash | opts | ) |

creates the CsvStringWriter single-type mode with content in the memory

Parameters

  opts | AbstractCsvWriter Constructor Option Hash Overview

Exceptions

  CSVSTRINGITER-ERROR | in the case of incorrect options

## constructor() [2/2]

CsvUtil::CsvStringWriter::constructor | ( | hash | spec,
|  | hash | opts
| ) |  |

creates the CsvStringWriter single-type mode with content in the memory

Parameters

  spec | a hash of field and type definitions; see Option Field Hash for more information
  opts | AbstractCsvWriter Constructor Option Hash Overview

Exceptions

  CSVSTRINGITER-ERROR | in the case of incorrect options

## write() [1/2]

string CsvUtil::CsvStringWriter::write | ( | Qore::AbstractIterator | iterator | ) |

Stream iterator and return a CSV-formatted output string.

Parameters

  iterator | an iterator to stream data

Returns
  the CSV-formatted output string corresponding to the input data

The iterator has to contain List or Hash as a return value of `getValue()` method.

Exceptions

  CSVFILEWRITER-DATA-ERROR | when the data does not fit defined column constraints or when `getValue` does not return list or hash

## write() [2/2]

string CsvUtil::CsvStringWriter::write | ( | list | l | ) |

Stream the contents of the list and return CSV-formatted output as a string.

Parameters

  l | a list of input data to format as CSV output

Returns
  the CSV-formatted output string corresponding to the input data

The list has to contain List or Hash elements that can be formatted according to the CSV definition

Exceptions

  CSVFILEWRITER-DATA-ERROR | when the data does not fit defined column constraints or when the list elements have the wrong type or values