Описание класса QXmlInputSourceКласс QXmlInputSource обеспечивает входные данные для подклассов QXmlReader. Далее... #include <QXmlInputSource> Замечание: Все функции в этом классе реентерабельны. Открытые функции
Защищенные функции
Подробное описаниеКласс QXmlInputSource обеспечивает входные данные для подклассов QXmlReader. Все подклассы QXmlReader читают входящий XML через этот класс. Этот класс распознаёт кодировку данных считыванием указания кодировки в XML файле, если она там есть, и читает данные, используя полученную кодировку. Если указание кодировки не найдено, подразумевается UTF-8 или UTF-16, в зависимости от того, найден ли байт-пометка. Есть два пути наполнить входящий поток данных: вы можете создать их с помощью QIODevice*, входные данные будут считываться с этого устройства. Или вы можете установить данные с помощью одной из одной из функций setData(). Обычно либо создают QXmlInputSource, который работает с QIODevice*, либо создают пустой QXmlInputSource и устанавливают данные с помощью setData(). Очень редко встречается комбинация обоих методов. Подклассы QXmlReader используют функцию next() для чтения подряд символа за символом. Если вы захотите начать сначала, воспользуйтесь reset(). Функции data() и fetchData() полезны, если вы хотите сделать что-то с данными вместо анализа, например, показать необработанный XML файл. Преимущество использования QXmlInputClass в таких случаях состоит в том, что он пытается использовать правильную кодировку. Смотрите также QXmlReader и QXmlSimpleReader. Описание функций-членовQXmlInputSource::QXmlInputSource ()Создаёт входной источник без данных. Смотрите также setData(). QXmlInputSource::QXmlInputSource ( QIODevice * dev )Создаёт входной источник данных и устанавливает передачу данных из устройства dev. Если dev не открыто, оно открывается в режиме "только чтение". Если dev является 0 или недоступно для чтения, входной источник не будет содержать данных. Смотрите также setData(), fetchData() и QIODevice. QXmlInputSource::~QXmlInputSource () [virtual]Деструктор. QString QXmlInputSource::data () const [virtual]Возвращает данные, которые содержит входящий поток, или пустую строку, если входящий поток не содержит данных. Смотрите также setData(), QXmlInputSource() и fetchData(). void QXmlInputSource::fetchData () [virtual]Эта функция читает больше данных с устройства, чем было установлено при создании. Если входящий источник уже содержит данные, функция сначала эти данные удаляет. Текущий объект не содержит данных после вызова этой функции, если при создании не было задано устройство для чтения данных или если не может прочитать больше данных с устройства. В двух случаях происходит неявная выборка в других функциях: в процессе создания (так что объект создаётся с некоторыми начальными данными, если таковые имеются) и в процессе вызова next() (если данные закончились). Обычно вам не нужно использовать эту функцию при вызове next(). Смотрите также data(), next() и QXmlInputSource(). QString QXmlInputSource::fromRawData ( const QByteArray & data, bool beginning = false ) [virtual protected]Эта функция читает XML файл из data и пытается распознать кодировку. Она конвертирует исходные данные data в QString и возвращает их. Делается всё возможное, чтобы получить правильную кодировку XML файла. Если beginning равно true, эта функция полагает, что данные начинаются и заканчиваются новым XML документом, потому функция ищет декларацию кодировки. Если beginning равно false, функция конвертирует данные, используя ту кодировку, что была определена ранее. QChar QXmlInputSource::next () [virtual]Возвращает следующий символ входного потока. Если функция встречает конец доступных данных, она возвращает QXmlInputSource::EndOfData. Если вы вызовите после этого next(), функция попробует прочитать больше данных с помощью fetchData(). Если fetchData() вернёт новые данные, текущая функция вернёт первый символ этих данных; в противном случае возвращается QXmlInputSource::EndOfDocument. Читатели, такие как QXmlSimpleReader, будут полагать, что найден конец документа, если текущая функция вернула QXmlInputSource::EndOfDocument, и начнут проверку, правильно ли сформирован полученный документ. Потому при переопределении этой функции, важно быть увереным, что поведение повторяется. Смотрите также reset(), fetchData(), QXmlSimpleReader::parse() и QXmlSimpleReader::parseContinue(). void QXmlInputSource::reset () [virtual]Эта функция устанавливает позицию, использующуюся в next(), в начало данных, возвращённых функцией data(). Это полезно, если вы хотите проанализировать полученные данные несколько раз. Замечание: в том случае, если основной источник - это QIODevice, текущая позиция в устройстве не будет установлена в начальную точку. Чтобы добиться изменения текущей позиции, воспользуйтесь Call QIODevice::seek(0). Смотрите также next(). void QXmlInputSource::setData ( const QString & dat ) [virtual]Устанавливает данные из входящего источника в dat. Если входящий источник уже имеет данные, они будут предварительно удалены. Смотрите также data(). void QXmlInputSource::setData ( const QByteArray & dat ) [virtual]Это перегруженная функция. Данные dat до сохранение передаются через правильный текстовый кодек. |
Попытка перевода Qt документации. Если есть желание присоединиться, или если есть замечания или пожелания, то заходите на форум: Перевод Qt документации на русский язык... Люди внесшие вклад в перевод: Команда переводчиков |