31#ifndef CPL_CSV_H_INCLUDED
32#define CPL_CSV_H_INCLUDED
50const char CPL_DLL *CSVFilename(
const char *);
52char CPL_DLL CSVDetectSeperator(
const char *pszLine);
54char CPL_DLL **CSVReadParseLine(FILE *fp);
55char CPL_DLL **CSVReadParseLine2(FILE *fp,
char chDelimiter);
57char CPL_DLL **CSVReadParseLineL(
VSILFILE *fp);
58char CPL_DLL **CSVReadParseLine2L(
VSILFILE *fp,
char chDelimiter);
60char CPL_DLL **CSVReadParseLine3L(
VSILFILE *fp,
size_t nMaxLineSize,
61 const char *pszDelimiter,
bool bHonourStrings,
62 bool bKeepLeadingAndClosingQuotes,
63 bool bMergeDelimiter,
bool bSkipBOM);
65char CPL_DLL **CSVScanLines(FILE *,
int,
const char *, CSVCompareCriteria);
66char CPL_DLL **CSVScanLinesL(
VSILFILE *,
int,
const char *, CSVCompareCriteria);
67char CPL_DLL **CSVScanFile(
const char *,
int,
const char *, CSVCompareCriteria);
68char CPL_DLL **CSVScanFileByName(
const char *,
const char *,
const char *,
70void CPL_DLL CSVRewind(
const char *);
71char CPL_DLL **CSVGetNextLine(
const char *);
72int CPL_DLL CSVGetFieldId(FILE *,
const char *);
73int CPL_DLL CSVGetFieldIdL(
VSILFILE *,
const char *);
74int CPL_DLL CSVGetFileFieldId(
const char *,
const char *);
76void CPL_DLL CSVDeaccess(
const char *);
78const char CPL_DLL *CSVGetField(
const char *,
const char *,
const char *,
79 CSVCompareCriteria,
const char *);
82void CPL_DLL SetCSVFilenameHook(
const char *(*)(
const char *));
Various convenience functions for CPL.
#define CPL_C_END
Macro to end a block of C symbols.
Definition: cpl_port.h:299
#define CPL_C_START
Macro to start a block of C symbols.
Definition: cpl_port.h:295
Various convenience functions for working with strings and string lists.
Virtual file handle.
Definition: cpl_vsi_virtual.h:63