Я - спокойный новичок и просто застрял с проблемой. Я ищу файл SomePath/NewDirectoryA/NewFile.kml
(NewFile.kml
будет единственный файл в NewDirectoryA
, наличие этого каталога только для поддержания семантики в проекте).
Если SomePath/NewDirectoryA/NewFile.kml
существует затем, я буду использовать его в своем коде и если это не существует затем, я должен создать его. Если этот Файл не существует затем, этот каталог также не существует в SomePath
. Таким образом, Если только я должен создать файл, я могу использовать QFile и открыть его в режиме ReadWrite или WriteOnly.
Но проблема, я должен создать файл с самим каталогом.
Я попробовал QFile
с именем файла SomePath/NewDirectoryA/NewFile.kml
но это не сделало работавший.
Предложите меня путь, которым я могу создать новый файл (NewFile.kml) в новом каталоге (NewDirectorA) в данном местоположении (SomePath).
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.
Функция создаст все родительские каталоги, необходимые для создания каталога.