我试图了解如何访问本地文件而不是ms-appx
资源等。但似乎不可能。我错过了什么吗?这个小例子引发了一个错误,但该文件确实存在于驱动器D的根目录中。是否可以在通用Windows平台开发中使用?或者它可能只是在PC上调试时不起作用,但可能在实际的设备窗口IOT上?
private void Button_Click(object sender, RoutedEventArgs e)
{
string path = @"D:\skyblue.jpg";
Uri uri_ = new Uri(path, UriKind.Absolute);
var a=Windows.Storage.ApplicationData.Current.LocalFolder;
Task.Run(() =>{
if (!File.Exists(path))
Dispatcher.RunAsync(CoreDispatcherPriority.Low, () =>
{
textBlock1.Text = "file not found";//this happens albeit file exists
});
});
}
答案 0 :(得分:1)
https://channel9.msdn.com/Events/Build/2017/B8012
从创作者的更新开始,在该视频的32分45秒左右,他们确认答案是“无” - 他们注意到你做不到的事情之一就是“直接访问文件系统”。那是几个月前,也许你正在使用更新的版本。但作为一个起点,我认为可以肯定地说,文件访问(如果它存在的话)是一个新功能。我没有坐下来看看最新版本中有什么可能,但如果你不是处于最前沿,可以说你无法访问文件系统吗?
答案 1 :(得分:0)
您是要存储文件还是访问资源?目前还不清楚你的最终目标。您也没有显示如何创建path
。写出这个字符串可能有助于验证它的位置。
在我的一些应用中,我使用_PathToPubCacheFolder = ApplicationData.Current.GetPublisherCacheFolder("YourInfoHere").Path;
来存储文件。
https://docs.microsoft.com/en-us/windows/uwp/files/file-access-permissions是一个很好的参考。