Windows 通用 C#:获取项目文件返回 FNFE
Posted
技术标签:
【中文标题】Windows 通用 C#:获取项目文件返回 FNFE【英文标题】:Windows Universal C#: Getting project files returns a FNFE 【发布时间】:2016-04-19 20:47:30 【问题描述】:我正在编写 WUP 应用程序,如果两个值相同,我需要将数据库文件从应用程序复制到用户本地文件夹。我遵循了许多关于如何访问项目文件的建议,但它们都不起作用,最后听取了 Windows 开发人员的建议,但这只是抛出 FileNotFoundException...
我的代码是
try await (await FileUtils.GetLocalFolder().GetFolderAsync("Database")).GetFileAsync("DB.json");
catch (FileNotFoundException d) await (await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///Database/DB.json"))).CopyAsync(await FileUtils.GetLocalFolder().GetFolderAsync("Database"));
我查看了我的项目目录名和文件名,但仍然没有运气,一切看起来都很好。
如果您需要有关如何帮助解决此问题的更多信息,请询问:)
【问题讨论】:
【参考方案1】:以下代码将您的文件放入项目文件夹中:
var folder = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFolderAsync("Database");
var file = await folder.GetFileAsync("DB.json");
只需确保您已将 db.json 的构建操作设置为“内容”。请参阅屏幕截图。
我刚刚检查过,它可以在我的机器上运行。
在此处查找工作示例中的代码: https://github.com/DanielMeixner/so/tree/master/FileAccess/App1
【讨论】:
谢谢!我以前在 VS 中从来没有见过这个,但是,我从来没有看过属性窗口哈哈。这很有效,我对自己错过了一些基本的东西感到生气。以上是关于Windows 通用 C#:获取项目文件返回 FNFE的主要内容,如果未能解决你的问题,请参考以下文章
在通用 Windows 平台 C# 中使用 DeviceWatcher 填充 ComboBox
是否可以将文件保存到确切的特定位置? (Windows 8.1 通用应用程序 C#)