我是UWP的新手,但我已经使用C#(桌面应用程序等)很长一段时间了 . 我最近尝试像往常一样写在app目录中的json文件,我收到了这条消息:
Access to the path 'C:\...\setting.json' is denied
这是我使用的代码:
File.WriteAllText(Path.Combine(Directory.GetCurrentDirectory(), "setting.json"), JsonConvert.SerializeObject(Settings));
我虽然这很奇怪,所以我做了一些研究 . app目录似乎是只读的 . 我已经尝试将属性设置为“正常”,仍然是相同的错误 . 我已经尝试过使用StorageFolder和StorageFile,仍然是相同的消息 . 有没有办法让文件夹不是只读的?这在WPF应用程序中运行得很好......
2 回答
问题是您尚未在
Package.appxmanifest
文件中声明broadFileSystemAccess功能 . 并且broadFileSystemAccess
允许用户有权访问的所有文件 . 例如:文档,图片,照片,下载,桌面,OneDrive等 .请注意,除了指定功能外,还必须添加
rescap
命名空间,并将其添加到gnorableNamespaces
以下是我为我的应用程序记录内部文件的方法:
希望这可以帮助