Qore CsvUtil Module Reference  1.6.2
CsvUtil::CsvWriter Class Reference

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

Inheritance diagram for CsvUtil::CsvWriter:

Public Member Methods

 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 Methods 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 Methods

 writeRawLine (list values)
 renders the line and writes it to the output stream
 
- Private Member Methods inherited from CsvUtil::AbstractCsvWriter
string prepareRawLine (list values)
 Prepare a string (line with EOF) with formatting and escaping. More...
 
 processCommonOptions (*hash n_opts, int C_OPTx)
 Process options and set internal variables.
 
 processSpec ()
 Process specification and set internal variable for mapping.
 
 writeHeaders ()
 Write csv headers.
 

Private Attributes

StreamWriter output
 the output stream for the CSV data
 
- Private 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
outputthe OutputStream for the CSV data generated
optsAbstractCsvWriter Constructor Option Hash Overview
Exceptions
CSVFILEITER-ERRORin 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
outputthe OutputStream for the CSV data generated
speca hash of field and type definition; see Option Field Hash for more information
optsAbstractCsvWriter Constructor Option Hash Overview
Exceptions
CSVFILEITER-ERRORin the case of incorrect options