Russian Qt Forum
Ноябрь 24, 2024, 15:51
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Вопросы новичков
>
QDataStream. Запись-чтение.
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: QDataStream. Запись-чтение. (Прочитано 4629 раз)
Андрей
Гость
QDataStream. Запись-чтение.
«
:
Февраль 28, 2012, 18:50 »
Не могу добиться, чтобы читалось из файла то, что записывал.
Пишу QChar - записывается сначала какой-то символ (пробел, похоже), потом нужный символ.
Читаю - читается "ненужный символ".
Запись:
QString FileName = QFileDialog::getSaveFileName(WParent,tr("Save as..."));
QFile File(FileName);
bool opened = File.open(QIODevice::WriteOnly);
if (!opened) return;
QDataStream output(&File);
output.setVersion(QDataStream::Qt_4_2);
.....
.....
....
QChar str ='<';
Stream<<str;
Чтение:
QString FileName = QFileDialog::getOpenFileName(WParent,tr("Open"));
QFile File(FileName);
bool opened = File.open(QIODevice::WriteOnly);
if (!opened) return;
QDataStream input(&File);
input.setVersion(QDataStream::Qt_4_2);
.....
.....
....
QChar symbol;
stream>>symbol;
«
Последнее редактирование: Февраль 28, 2012, 19:06 от Андрей
»
Записан
Странник
Гость
Re: QDataStream. Запись-чтение.
«
Ответ #1 :
Февраль 28, 2012, 19:57 »
при чтении действительно открываете с флагом QIODevice::WriteOnly или это опечатка? % )
Записан
Андрей
Гость
Re: QDataStream. Запись-чтение.
«
Ответ #2 :
Февраль 28, 2012, 20:42 »
Спасибо. Исправил.
Тогда ещё вопрос. В файл пишется много лишних символов, это плата за QDataStream?
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: QDataStream. Запись-чтение.
«
Ответ #3 :
Февраль 28, 2012, 21:18 »
это плата за запись версии и объектов классов, а не чистых данных
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
kolob
Частый гость
Offline
Сообщений: 296
Re: QDataStream. Запись-чтение.
«
Ответ #4 :
Март 24, 2012, 01:32 »
Цитировать
при чтении действительно открываете с флагом QIODevice::WriteOnly или это опечатка? % )
Я что то не очень понял. А в чем проблема в флаге QIODevice::WriteOnly?
Записан
Qt 5.11.0, Win, MinGW
mutineer
Гость
Re: QDataStream. Запись-чтение.
«
Ответ #5 :
Март 24, 2012, 01:39 »
Цитата: kolob от Март 24, 2012, 01:32
Цитировать
при чтении действительно открываете с флагом QIODevice::WriteOnly или это опечатка? % )
Я что то не очень понял. А в чем проблема в флаге QIODevice::WriteOnly?
WriteOnly, как следует из названия, позволяет только писать
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...