AsciiFilter

Public Types

  • enum DataType

Public Methods

void

AsciiFilter()

QString

autoSeparatorDetectionString()

DataType

columnModeToDataType(AbstractColumn::ColumnMode)

QVector< AbstractColumn::ColumnMode >

columnModes() const

QStringList

columnNames() const

int

columnNumber(const QString &fileName, const QString &separator=QString())

QStringList

commentCharacters()

QPair< QString, QString >

dataTypeString(const DataType)

AbstractColumn::ColumnMode

dataTypeToColumnMode(DataType)

Properties

defaultProperties() const

QVector< AbstractColumn::ColumnMode >

determineColumnModes(const QVector< QStringList > &, const AsciiFilter::Properties &, QString &dateTimeFormat)

QString

fileInfoString(const QString &)

Status

initialize(Properties p)

bool

initialized() const

size_t

lineCount(const QString &fileName, size_t maxLines=std::numeric_limits< std::size_t >::max())

bool

load(XmlStreamReader *) override

QVector< QStringList >

preview(QIODevice &device, int lines, bool reinit=true, bool skipFirstLine=false)

QVector< QStringList >

preview(const QString &fileName, int lines, bool reinit=true)

Properties

properties() const

void

readDataFromFile(const QString &fileName, AbstractDataSource *=nullptr, ImportMode columnImportMode=ImportMode::Replace) override

qint64

readFromDevice(QIODevice &device, ImportMode columnImportMode, ImportMode rowImportMode, qint64 from, qint64 lines, qint64 keepNRows=0, bool skipFirstLine=false)

void

save(QXmlStreamWriter *) const override

QStringList

separatorCharacters()

void

setDataSource(AbstractDataSource *)

void

setProperties(Properties &p)

bool

validateDataTypes(const QStringView &s, QVector< DataType > &, QString &invalidString)

void

write(const QString &fileName, AbstractDataSource *) override

Detailed Description

class AsciiFilter : public AbstractFileFilter

Public Functions

virtual void write(const QString &fileName, AbstractDataSource*) override

write

Writing the content of the datasource to the file with filename fileName

Parameters:

fileName –

Public Static Functions

static QStringList separatorCharacters()

returns the list of all predefined separator characters.

static QStringList commentCharacters()

returns the list of all predefined comment characters.

static size_t lineCount(const QString &fileName, size_t maxLines = std::numeric_limits<std::size_t>::max())

returns number of lines in file ‘fileName’ optional: only check ‘maxLines’ (returns minimum of line count and maxLines)

static QPair<QString, QString> dataTypeString(const DataType)

returns the string representation of the given DataType.

static AbstractColumn::ColumnMode dataTypeToColumnMode(DataType)

maps AsciiFilter::DataType to AbstractColumn::ColumnMode

static DataType columnModeToDataType(AbstractColumn::ColumnMode)

maps AbstractColumn::ColumnMode to AsciiFilter::DataType

static bool validateDataTypes(const QStringView &s, QVector<DataType>&, QString &invalidString)

validates the provided data types string and converts it to the list of DataTypes,

Parameters:
  • s – the string to validate

  • types – the resulting list of DataTypes

  • invalidString – the invalid part of the provided string

Returns:

true if all provided data types are valid, false otherwise

static QVector<AbstractColumn::ColumnMode> determineColumnModes(const QVector<QStringList>&, const AsciiFilter::Properties&, QString &dateTimeFormat)

AsciiFilter::determineColumnModes.

Determines the column modes from the provided rows

Parameters:

dateTimeFormat – The datetime format will be updated if it is empty by the detected format

Returns:

struct Properties