- Extending Qt Creator Manual
- QtCreator
- TextFileFormat
- Extending Qt Creator Manual 12.0.1

# TextFileFormat Class

class Utils::TextFileFormat

The TextFileFormat class describes the format of a text file and provides autodetection. More...

Header: | #include <TextFileFormat>

- List of all members, including inherited members

## Public Functions

bool | decode(const QByteArray &data, QString *target) const
bool | decode(const QByteArray &data, QStringList *target) const
bool | writeFile(const Utils::FilePath &filePath, QString plainText, QString *errorString) const

## Static Public Members

QByteArray | decodingErrorSample(const QByteArray &data)
Utils::TextFileFormat | detect(const QByteArray &data)
Utils::TextFileFormat::ReadResult | readFile(const Utils::FilePath &filePath, const QTextCodec *defaultCodec, QStringList *plainTextList, Utils::TextFileFormat *format, QString *errorString, QByteArray *decodingErrorSample = nullptr)
Utils::TextFileFormat::ReadResult | readFile(const Utils::FilePath &filePath, const QTextCodec *defaultCodec, QString *plainText, Utils::TextFileFormat *format, QString *errorString, QByteArray *decodingErrorSample = nullptr)

## Detailed Description

The format comprises

- Encoding represented by a pointer to a QTextCodec
- Presence of an UTF8 Byte Order Marker (BOM)
- Line feed storage convention

The class also provides convenience functions to read text files and return them as strings or string lists and to write out files.

## Member Function Documentation

### bool TextFileFormat::decode(const QByteArray &data, QString *target) const

Returns data decoded to a plain string, target.

### bool TextFileFormat::decode(const QByteArray &data, QStringList *target) const

Returns data decoded to a list of strings, target.

Intended for use with progress bars loading large files.

### `[static]` QByteArray TextFileFormat::decodingErrorSample(const QByteArray &data)

Returns a piece of text specified by data suitable as display for an encoding error.

### `[static]` Utils::TextFileFormat TextFileFormat::detect(const QByteArray &data)

Detects the format of text data.

### `[static]` Utils::TextFileFormat::ReadResult TextFileFormat::readFile(const Utils::FilePath &filePath, const QTextCodec *defaultCodec, QStringList *plainTextList, Utils::TextFileFormat *format, QString *errorString, QByteArray *decodingErrorSample = nullptr)

Reads a text file from filePath into a list of strings, plainTextList using defaultCodec and text file format format.

Returns whether decoding was possible without errors. If errors occur, returns an error message, errorString and a sample error, decodingErrorSample.

### `[static]` Utils::TextFileFormat::ReadResult TextFileFormat::readFile(const Utils::FilePath &filePath, const QTextCodec *defaultCodec, QString *plainText, Utils::TextFileFormat *format, QString *errorString, QByteArray *decodingErrorSample = nullptr)

Reads a text file from filePath into a string, plainText using defaultCodec and text file format format.

Returns whether decoding was possible without errors.

### bool TextFileFormat::writeFile(const Utils::FilePath &filePath, QString plainText, QString *errorString) const

Writes out a text file to filePath into a string, plainText.

Returns whether decoding was possible without errors. If errors occur, returns an error message, errorString.