尝试读取UWP C++;

尝试读取UWP C++;,uwp,c++-cx,Uwp,C++ Cx,我正试图从文本文件中获取字符串。 我通过右键单击项目名称->添加->新建项目来创建文本文件…文件属性设置如下:从生成->否,内容->是 这是读取文件的代码 void MyApp::MainPage::btn_readFile_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^e) { StorageFolder^ storageFolder = ApplicationData::Current->L

我正试图从文本文件中获取字符串。
我通过右键单击项目名称->添加->新建项目来创建文本文件…
文件属性设置如下:从生成->否,内容->是
这是读取文件的代码

void MyApp::MainPage::btn_readFile_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^e)
{
    StorageFolder^ storageFolder = ApplicationData::Current->LocalFolder;
    create_task(storageFolder->GetFileAsync("sample.txt")).then([](StorageFile^ sampleFile)
    {
        return FileIO::ReadBufferAsync(sampleFile);
    }).then([](Streams::IBuffer^ buffer)
    {
        auto dataReader = DataReader::FromBuffer(buffer);
        String^ bufferText = dataReader->ReadString(buffer->Length);
    });
}
我跟着


这就是错误
<强> >在WASAPIIASPATEAPAP1.EX0x73A1812中抛出:微软C++异常:平台::CopExt^在内存位置0x083E280。HRESULT:0x80070002指定されたファイルが見つかりません。 WinRT信息:指定されたファイルが見つかりません。 发生

对不起日本人指定されたファイルが見つかりません。表示找不到指定的文件。

如果该文件是项目的一部分,则它不在
ApplicationData::Current->LocalFolder
中,而是在
Package::Current->InstalledLocation
中。更新代码以查看(在将其与项目打包后),它应该可以工作。请注意,此位置是只读的;您无法写入您的
InstalledLocation
。如果要修改文件,需要先将其复制到
LocalFolder

能否将错误消息添加到问题中?
sample.txt
是否实际存储在
ApplicationData::Current->LocalFolder
中?还请注意@VTT我很抱歉这对我来说是新的。如何将文件存储在LocalFolder中?我把它放在Project root文件夹下(同样,.VCXPROJ),并通过将内容属性设置为Yes来链接它。我认为标记项目作为内容在C++项目中不起作用。因此,作为后期构建步骤,您可能需要将此文件复制到所需位置。此外,如果此文件应该是项目的一部分,则将其复制到应用程序文件夹(连同可执行文件)而不是应用程序数据文件夹中是有意义的。您可以将任何资产添加到通过Microsoft应用商店分发的应用程序包中。您只需确保资产确实已添加到包中。编程语言的选择没有什么区别。