Как создать новый Файл с полным путем в QT?

Я - спокойный новичок и просто застрял с проблемой. Я ищу файл SomePath/NewDirectoryA/NewFile.kml (NewFile.kml будет единственный файл в NewDirectoryA, наличие этого каталога только для поддержания семантики в проекте).

Если SomePath/NewDirectoryA/NewFile.kml существует затем, я буду использовать его в своем коде и если это не существует затем, я должен создать его. Если этот Файл не существует затем, этот каталог также не существует в SomePath. Таким образом, Если только я должен создать файл, я могу использовать QFile и открыть его в режиме ReadWrite или WriteOnly.

Но проблема, я должен создать файл с самим каталогом.
Я попробовал QFile с именем файла SomePath/NewDirectoryA/NewFile.kml но это не сделало работавший.

Предложите меня путь, которым я могу создать новый файл (NewFile.kml) в новом каталоге (NewDirectorA) в данном местоположении (SomePath).

19
задан ymoreau 26 March 2018 в 12:49
поделиться

1 ответ

bool QFile::open ( OpenMode mode ) [virtual]

[...]

Примечание: В режиме WriteOnly или ReadWrite, если соответствующий файл еще не существует, эта функция попытается создать новый файл перед его открытием.

Предостережение Qt при создании файла

Вопросы, связанные с конкретной платформой

Разрешения файлов обрабатываются по-разному в Unix-подобных системах и Windows. Windows. В каталоге без права записи в Unix-подобных системах файлы не могут быть созданы. Это не всегда так в Windows, где, например. например, каталог 'Мои документы' обычно не доступен для записи, но в нем в нем все еще можно создавать файлы.

Каталоги создаются с помощью

bool QDir::mkdir ( const QString & dirName ) const

Создает подкаталог с именем dirName.

and

bool QDir::mkpath ( const QString & dirPath ) const

Создает путь каталога dirPath.

Функция создаст все родительские каталоги, необходимые для создания каталога.

36
ответ дан 30 November 2019 в 03:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: