我正在运行Windows 10并使用VS2017。下面的代码无法打开文件...
std::ofstream output_file;
output_file.open("datafile.txt", std::ios::out);
if (!output_file.is_open())
{
std::cout << "This is the whole problem";
}
这可能与写入/读取文件的权限有关,如何授予该权限。
答案 0 :(得分:0)
在UWP应用中,默认情况下它可以访问某些文件系统位置。它还可以通过file picker或通过声明capabilities访问其他位置。您可以查看File access permissions主题以了解详细信息。
对于您的问题,似乎您想访问应用程序InstalledLocation中的文件,作为Application install directory的介绍,您可以使用C ++ / WinRT中的以下代码访问文件:
Windows::Foundation::IAsyncAction ExampleCoroutineAsync()
{
Windows::Storage::StorageFile file{
co_await Windows::Storage::StorageFile::GetFileFromApplicationUriAsync(Windows::Foundation::Uri{L"ms-appx:///datafile.txt"})
};
// Process file
}
或C ++:
auto getFileTask = create_task(StorageFile::GetFileFromApplicationUriAsync(ref new Uri("ms-appx:///datafile.txt")));
getFileTask.then([](StorageFile^ file)
{
// Process file
});