C++ Qt:如何在任何Windows计算机上使用路径创建文件?

C++ Qt:如何在任何Windows计算机上使用路径创建文件?,c++,qt,path,qfile,qdir,C++,Qt,Path,Qfile,Qdir,我不确定标题是否准确地反映了我想问的问题,因此,这里是: 我刚刚制作了第一个使用XML文件存储数据的桌面应用程序。XML文件存储在C:/Users/myname/Documents/adjsklf/asdjfklasd/。。。。在我自己的机器上。 如何在特定位置创建此文件C:/Users/theirname/Documents/myAppName/data.xml?或者更具体地说,如何获取“theirname”文件名?对于具有多个用户的计算机,如何获取属于实际使用应用程序的用户的文件名 另外,当

我不确定标题是否准确地反映了我想问的问题,因此,这里是:

我刚刚制作了第一个使用XML文件存储数据的桌面应用程序。XML文件存储在C:/Users/myname/Documents/adjsklf/asdjfklasd/。。。。在我自己的机器上。 如何在特定位置创建此文件C:/Users/theirname/Documents/myAppName/data.xml?或者更具体地说,如何获取“theirname”文件名?对于具有多个用户的计算机,如何获取属于实际使用应用程序的用户的文件名

另外,当我第一次启动这个应用程序时,我并没有真正考虑部署这个应用程序。因此,我创建了一个类的显式构造函数dataManipulation,它处理XML文件中的所有数据。发生的是,当我的程序运行时,它执行MainWindow,同时用我想要的路径构造我的dataManipulation对象。但是,由于现在我有几个朋友想试用这个应用程序,我需要能够首先使用我前面提到的路径检测文件是否存在。实现这一目标的最佳方式是什么

非常感谢你

使用


有许多方法可以执行文件打开检查。如果您想以类似于Qt的方式来完成它,请查看QFile并进行类似的操作。在构造函数中,它仅设置路径,但文件仅在
QFile::open
中打开,其返回值指示文件是否已成功打开。您可以在数据操作类中创建
init()
方法,检查其返回值,并根据需要向用户显示消息。

查看
SHGetKnownFolderPath
。你真的需要将它存储在文档中而不是AppData中吗?@Simple,实际上,现在我想起来了,AppData会更好!SHGetKnownFolderPath是否也适用于AppData?您可以使用
FOLDERID\u RoamingAppData
FOLDERID\u LocalAppData
作为第一个参数。