Loading...
Searching...
No Matches
CsvUtil::CsvWriter Class Reference

The CsvWriter class for safe CSV data creation. More...

`#include <CsvWriter.qc.dox.h>`

Inheritance diagram for CsvUtil::CsvWriter:
[legend]

## Public Member Functions

| constructor (Qore::OutputStream output, *hash opts)
| creates the CsvWriter in single-type mode with the OutputStream and an optional option hash More...
| constructor (Qore::OutputStream output, hash spec, hash opts)
| creates the CsvWriter in multi-type mode with the OutputStream and an option hash More...
Public Member Functions inherited from CsvUtil::AbstractCsvWriter
| constructor (string n_errname, *hash< auto > n_opts)
| Creates the AbstractCsvWriter in single-type mode. More...
| constructor (string n_errname, hash< auto > spec, hash< auto > n_opts)
| Creates the AbstractCsvWriter in single-type mode. More...
*hash< string, AbstractDataField > | getRecordType ()
| Returns the description of the record type, if any.
| write (list< auto > l)
| Stream the contents of the list into the output. More...
| write (Qore::AbstractIterator iterator)
| Stream an iterator into the output. More...
| write (Qore::SQL::SQLStatement iterator)
| Stream an iterator into the output. More...
| writeLine (hash< auto > values)
| Write a line with headers-values hash. More...
| writeLine (list< auto > values)
| Write a line with a list of values; data are checked against column rules. More...
| writeLine (string type, hash< auto > values)
| Write a line for a specific record from a hash to the output. More...
| writeLine (string type, list< auto > values)
| Write a line with headers-values list. More...

## Protected Member Functions

| writeRawLine (list values)
| renders the line and writes it to the output stream
Protected Member Functions inherited from CsvUtil::AbstractCsvWriter
string | prepareRawLine (list< auto > values)
| Prepare a string (line with EOF) with formatting and escaping. More...
| processCommonOptions (*hash< auto > n_opts, int C_OPTx)
| Process options and set internal variables.
| processSpec ()
| Process specification and set internal variable for mapping.
| writeHeaders ()
| Write csv headers.
abstract | writeRawLine (list< auto > values)
| This method must be overridden in child classes to provide the output implementation.

## Protected Attributes

StreamWriter | output
| the output stream for the CSV data
Protected Attributes inherited from CsvUtil::AbstractCsvWriter
string | baseTemplate
| base template for value format
int | block = 1000
| block size for bulk DML
bool | checkElementCounts = False
| verify the column count for every row; if a row does not match, then throw a `CSVFILEITERATOR-DATA-ERROR` exception
string | encoding
| output file character encoding
string | eol = EOL_UNIX
| end of line sequence
*code | info_log
| a closure/call reference for informational logging when using write(SQLStatement)
int | lineNo = 0
| the latest line number
hash | m_out_by_idx
| mapping output field by index
hash | m_out_by_name
| mapping output field by name
string | m_quoteEscapeChar = "\\"
| quote escape character
bool | optimal_quotes = True
| stores the optimal quotes option
const | Options
| valid options for the object (a hash for quick lookups of valid keys)
string | quote = "\""
| field content delimiter
string | separator = ","
| field separator
bool | write_headers = True
| this flag determines if any stored headers are output

## Detailed Description

The CsvWriter class for safe CSV data creation.

## Member Function Documentation

## constructor() [1/2]

CsvUtil::CsvWriter::constructor | ( | Qore::OutputStream | output,
|  | *hash | opts
| ) |  |

creates the CsvWriter in single-type mode with the OutputStream and an optional option hash

Parameters

  output | the OutputStream for the CSV data generated
  opts | AbstractCsvWriter Constructor Option Hash Overview

Exceptions

  CSVSTREAMWRITER-ERROR | in the case of incorrect options

## constructor() [2/2]

CsvUtil::CsvWriter::constructor | ( | Qore::OutputStream | output,
|  | hash | spec,
|  | hash | opts
| ) |  |

creates the CsvWriter in multi-type mode with the OutputStream and an option hash

Parameters

  output | the OutputStream for the CSV data generated
  spec | a hash of field and type definition; see Option Field Hash for more information
  opts | AbstractCsvWriter Constructor Option Hash Overview

Exceptions

  CSVSTREAMWRITER-ERROR | in the case of incorrect options