在Windows 8中读取文本文件

时间:2012-03-10 07:44:21

标签: c# windows windows-8

我在中阅读嵌入式资源(文本文件)时遇到一些问题,通常我会使用Assembly.GetExecutingAssembly(),但我似乎无法在此处执行此操作。我正在引用System.Reflection命名空间,但它说无法找到,认为它可能已被删除。

有什么想法吗?

目前正在使用Windows 8 Consumer Preview

代码: Assembly readAssembly = Assembly.GetExecutingAssembly(); StreamReader streamReader = new StreamReader(readAssembly.GetManifestResourceStream("Test.txt"));

错误: System.Reflection.Assembly'不包含'GetExecutingAssembly'的定义

3 个答案:

答案 0 :(得分:8)

WinRT 中,资源应包含在包中。您使用Package.Current.InstalledLocation.GetFileAsync来读取资源。

以下帖子有一些示例代码:
http://social.msdn.microsoft.com/Forums/en-US/winappswithcsharp/thread/d4b327e3-a8f2-4d3c-8ed7-ba2ea953d0b9

答案 1 :(得分:2)

在AppStore库中,您可以使用以下代码:

Stream stream = this.GetType().GetTypeInfo().Assembly.GetManifestResourceStream(fileName);

答案 2 :(得分:1)

为什么不使用VS 2012中提供的ReadFileAsync()方法。 将文本文件添加到项目中并调用异步方法