Описание тега qiodevice

Класс QIODevice - это базовый интерфейсный класс всех устройств ввода-вывода в Qt.

В QIODevice class - это базовый интерфейсный класс всех устройств ввода-вывода в Qt.

QIODevice предоставляет как общую реализацию, так и абстрактный интерфейс для устройств, поддерживающих чтение и запись блоков данных, таких как QFile, QBuffer а также QTcpSocket. QIODeviceявляется абстрактным и не может быть инстанцирован, но обычно используется интерфейс, который он определяет, чтобы обеспечить независимые от устройства функции ввода-вывода. Например, классы XML Qt работают сQIODevice указатель, позволяющий использовать их с различными устройствами (такими как файлы и буферы).

Прежде чем получить доступ к устройству, open() должен быть вызван для установки правильного OpenMode (Такие как ReadOnly или ReadWrite). Затем вы можете написать на устройство с помощьюwrite() или putChar(), и прочтите, позвонив либо read(), readLine(), или readAll(). Вызовclose() когда вы закончите с устройством.

QIODevice различает два типа устройств: устройства с произвольным доступом и последовательные устройства.

  • Устройства с произвольным доступом поддерживают поиск произвольных позиций с помощью seek(). Текущая позиция в файле доступна по вызовуpos(). QFile а также QBuffer являются примерами устройств с произвольным доступом.
  • Последовательные устройства не поддерживают поиск произвольных позиций. Данные должны быть прочитаны за один проход. Функцииpos() а также size() не работают для последовательных устройств. QTcpSocket а также QProcess являются примерами последовательных устройств.

Официальную документацию Qt можно найти здесь для Qt 4.8 и здесь для Qt 5.