сохранение текста из QTextEdit в файл |
Здравствуйте, гость ( Вход | Регистрация )
сохранение текста из QTextEdit в файл |
deex |
2.1.2010, 20:20
Сообщение
#1
|
Студент Группа: Участник Сообщений: 45 Регистрация: 12.3.2009 Пользователь №: 608 Спасибо сказали: 0 раз(а) Репутация: 0 |
вот, сохраняю из текстового поля в файл но сохраняет до первого пробела если там "строка1 строка2", то в файл попадет только "строка1" почему? |
|
|
panter_dsd |
3.1.2010, 11:39
Сообщение
#2
|
Жаждущий знаний Группа: Участник Сообщений: 254 Регистрация: 1.1.2009 Из: Санкт-Петербург Пользователь №: 474 Спасибо сказали: 32 раз(а) Репутация: 3 |
Файл закрываешь? Попробуй после out << editArea->toPlainText(); сделать file.flush().
|
|
|
deex |
3.1.2010, 17:22
Сообщение
#3
|
Студент Группа: Участник Сообщений: 45 Регистрация: 12.3.2009 Пользователь №: 608 Спасибо сказали: 0 раз(а) Репутация: 0 |
|
|
|
Litkevich Yuriy |
3.1.2010, 18:55
Сообщение
#4
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
deex, выложи простейший тестовый проект (zip-архив). Не должно быть такого, что ты описываешь.
|
|
|
deex |
3.1.2010, 20:58
Сообщение
#5
|
Студент Группа: Участник Сообщений: 45 Регистрация: 12.3.2009 Пользователь №: 608 Спасибо сказали: 0 раз(а) Репутация: 0 |
|
|
|
Litkevich Yuriy |
3.1.2010, 22:00
Сообщение
#6
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
У меня нет никакой проблемы.
Скомпилировал, запустил, написал: qwerty uiop нажал Save as открыл файл проверил, всё что написал сохранилось. (Файл: test_1.deex.zip ( 10 байт ) Кол-во скачиваний: 567 ) Дописал ещё строку, получилось qwery uiop йцукен гшщз нажал Save as открыл файл проверил, всё что написал сохранилось. (Файл: test_2.deex.zip ( 22 байт ) Кол-во скачиваний: 532 ) П.С. удали фиктивное расширение .zip П.П.С. Windows 2000 SP4: MinGW32(GCC-3.4.5) - Qt 4.4.3 А вот при чтении косяк: смотри Асистент, пример как читать из потока.При записи в поток, записывается всё содержимое переменной, т.е. весь текст QTextEdita. Описание оператора ввода из потока: Цитата QTextStream & QTextStream::operator>> ( QString & str ) Reads a word from the stream and stores it in str, then returns a reference to the stream. Words are separated by whitespace (i.e., all characters for which QChar::isSpace() returns true). Ещё есть такая строчка: Цитата file.write(editArea->toPlainText().toAscii()); Выделенную функцию лучше не применять. Иначе на русском не напишешь, да и применена она почему-то только в SaveTo, а в SaveAs её нет, т.е. файл будет сохранятся по разному.
|
|
|
deex |
4.1.2010, 11:17
Сообщение
#7
|
Студент Группа: Участник Сообщений: 45 Регистрация: 12.3.2009 Пользователь №: 608 Спасибо сказали: 0 раз(а) Репутация: 0 |
большое спасибо!
Цитата file.write(editArea->toPlainText().toAscii()); Выделенную функцию лучше не применять. это эксперименты, я понимаю что .toUtf8() лучше Цитата да и применена она почему-то только в SaveTo, а в SaveAs её нет тоже эксперименты) пока добиваюсь чтобы хоть что-то работало как надо странно что нельзя редактировать своё сообщение на форуме в общем теперь читаю так QTextStream in(&file); QString line = in.readAll(); и .toUtf8() убрал, а то русский текст сохраняется коряво |
|
|
Litkevich Yuriy |
4.1.2010, 15:19
Сообщение
#8
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
я понимаю что .toUtf8() лучше лучше вообще текст таким образом не модифицировать. Вот как пользовался потоком, так и продолжай.Если нужно использовать перекодирование, то смотри в сторону установки Коддера/декоддера для потока: QTextStream::setCodec странно что нельзя редактировать своё сообщение на форуме 20 сообщений накопится, сможешь
|
|
|
Текстовая версия | Сейчас: 27.12.2024, 10:06 |