Qt: Как создать файл, используя путь на любом компьютере с Windows?

Я не совсем уверен, содержит ли заголовок то, что я хочу спросить, вот оно:

Я только что сделал свое первое настольное приложение, которое использует XML-файл для хранения данных. Файл XML хранится где-то в C: / Users / myname / Documents / adjsklf / asdjfklasd / …. на моей собственной машине.
Как мне создать этот файл в определенном месте C: /Users/theirname/Documents/myAppName/data.xml? Или, более конкретно, как я могу получить имя файла «их имя»? Для компьютеров с несколькими пользователями, как я могу получить имя файла, который принадлежит пользователю, который на самом деле использует приложение?

Кроме того, когда я впервые запустил это приложение, я не думал о его развертывании. Поэтому я создал явный конструктор класса dataManipulation, который манипулирует всеми данными в моем XML-файле. Что происходит, когда моя программа запускается, она выполняет MainWindow, которая в то же время создает мой объект dataManipulation с нужным мне путем. Однако, поскольку теперь у меня есть несколько друзей, которые хотят попробовать это приложение, я должен быть в состоянии определить, существует ли файл первым, используя путь, который я упоминал ранее. Какой лучший способ достичь этого?

Спасибо вам большое!

0

Решение

использование QStandardPaths :: writableLocation.

Есть много способов выполнить проверку открытия файла. Если вы хотите сделать это как в Qt, взгляните на QFile и сделайте то же самое. В конструкторе он только устанавливает путь, но файл открывается только в QFile::openи его возвращаемое значение указывает, было ли оно успешно открыто. Вы можете создать init() метод в вашем классе манипулирования данными, проверьте его возвращаемое значение и покажите сообщение пользователю при необходимости.

2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector