crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> считывание строки из файла(QFile)
Гость_Гость_*
сообщение 12.7.2015, 23:20
Сообщение #1





Гости








    


Добрый вечер.
Прошу помочь с проблемой.

Когда записываю строку в файл:
QFile file;
    file.setFileName("File.txt");
    file.open(QIODevice::ReadWrite);  


    QString str="Hello";

    file.write((char*)&str,sizeof(str));
    
    file.close();

    qDebug()<<str;

Все записывается в файл.
А когда пытаюсь считать:
QFile file;
    file.setFileName("File.txt");
    file.open(QIODevice::ReadWrite);   //QIODevice::WriteOnly,ReadOnly,Text - не помогают.


    QString str;

    file.read((char*)&str,sizeof(str));
    
    file.close();

    qDebug()<<str;


Приложение аварийно завершается, в чем проблема?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
ahalaj
  опции профиля:
сообщение 13.7.2015, 9:28
Сообщение #2


Студент
*

Группа: Участник
Сообщений: 47
Регистрация: 14.6.2014
Пользователь №: 4166

Спасибо сказали: 13 раз(а)




Репутация:   1  


Не инициализируешь QString чтобы в ней хватило места для прочитанной строки, в результате строка читается или в никуда, или возникает переполнение стека.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 16.11.2024, 2:03