1

我正在尝试在 Windows 8 应用程序中读取 chrome 书签文件。问题是我收到“System.UnauthorizedAccessException”异常。所以基本上你必须在应用程序清单中注册一个文件类型关联,但该文件没有扩展名。

文件:C:\Users\<User>\AppData\Local\Google\Chrome\User Data\Default\Bookmarks

这在 Windows 8 应用程序中是否可行?

更新

这是我的文件访问代码:

 public async Task<string> ReadFile(string filename)
        {
            if (await FileExists(filename))
            {
                var file = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(filename);
                var stream = await file.OpenReadAsync();
                var reader = new StreamReader(stream.AsStream());
                return await reader.ReadToEndAsync();
            }
            else return string.Empty;
        }
4

2 回答 2

1

一种解决方法是使用文件选择器。这允许最终用户手动选择文件系统上的文件。从文件选择器中获得 FileStorage 对象后,您就可以打开并读取该文件。

或者,您可以保存 StorageFile 以供以后使用,这意味着您的应用程序可以稍后访问该文件,而最终用户无需再次选择该文件。

有关 MSDN 的更多信息:

文件打开选择器

如何跟踪最近使用的文件和文件夹

于 2013-01-13T16:04:28.733 回答
1

Windows 8 应用程序无法访问任何随机文件系统位置。它只能访问

  • 应用程序文件夹(特定于您的应用程序)
  • 常用文件夹,例如我的图片、我的视频和类似文件夹

有关完整的详细信息,请参阅本文

于 2013-01-13T10:50:13.383 回答