![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
NO_0b |
![]()
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 23.3.2012 Пользователь №: 3285 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
QFile mFile("F:/Test/MyFile.txt");
Как понимаю, создает объект mFile класса QFile. Но не понтно, соездает ли файл с именем F:/Test/MyFile.txt или он уже должен был существовать? И если верно второе, то как можно программно создать файл с определенным именем в определенной папке? Изучаю QT второй день, просьба ногами не бить. |
|
|
ilyabvt |
![]()
Сообщение
#2
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 297 Регистрация: 23.6.2011 Пользователь №: 2765 Спасибо сказали: 45 раз(а) Репутация: ![]() ![]() ![]() |
Файл создается при вызове функции open, если он не был создан до этого. |
|
|
NO_0b |
![]()
Сообщение
#3
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 23.3.2012 Пользователь №: 3285 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Спасибо. И тогда второй вопрос. Какие могут быть причины, что файл упорно не хочет открыватьс?
Вот написал функцию: QString Write(QString Filename) { QFile mFile(Filename); if(!mFile.open(QFile::WriteOnly,QFile::Text)) return "Could not open for writing"; QTextStream out(&mFile); out<< "MF"; mFile.close(); return "Succesful writing"; } При вызове постонно пишет что не может открыть. Все, нашел проблему. В обучающем курсе c++ qt 12 на youtube было написано дл задани режима только запись QFile::WriteOnly и почему то работало. Попробовал QIODevice::WriteOnly и у мен стало работать. |
|
|
ilyabvt |
![]()
Сообщение
#4
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 297 Регистрация: 23.6.2011 Пользователь №: 2765 Спасибо сказали: 45 раз(а) Репутация: ![]() ![]() ![]() |
Вы пытаетесь передать два параметра, а функция open принимает только один. Если хотите передать несколько флагов следует воспользоваться оператором '|' (побитовое ИЛИ). Вот так правильно:
|
|
|
NO_0b |
![]()
Сообщение
#5
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 23.3.2012 Пользователь №: 3285 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Да, действительно. Был невнимателен и не увидел что там побитовое ИЛИ, а не запта под второй аргумент.
Большое спасибо. |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 28.4.2025, 19:18 |