如何在Xamarin Forms PCL项目上阅读文本文件?

时间:2016-04-19 17:47:08

标签: c# xamarin xamarin.forms

我需要在我的Xamarin.Forms PCL项目中读取文本文件(嵌入式资源)。 在working with files xamarin文档中,它建议使用以下代码:

var assembly = typeof(LoadResourceText).GetTypeInfo().Assembly;
Stream stream = assembly.GetManifestResourceStream("WorkingWithFiles.PCLTextResource.txt");
string text = "";
using (var reader = new System.IO.StreamReader (stream)) {
    text = reader.ReadToEnd ();
}

问题是我找不到这个LoadResourceText是什么。我发现它只是我的装配中的一种类型。但我真的不明白这意味着什么。

我无法在任何地方找到我需要做的明确的实际解释。

任何帮助?

由于

1 个答案:

答案 0 :(得分:8)

要阅读现有文件,您需要将LoadResourceText替换为PCL项目中的类。它用于获取包含嵌入文件的程序集。您还需要将WorkingWithFiles替换为PCL项目的命名空间。

您需要为要编译的代码添加using System.Reflection;

如果您想在运行时创建文件并稍后阅读,可以使用PCLStorage Library,如下所示:

public async Task PCLStorageSample()
{
    IFolder rootFolder = FileSystem.Current.LocalStorage;
    IFolder folder = await rootFolder.CreateFolderAsync("MySubFolder",
        CreationCollisionOption.OpenIfExists);
    IFile file = await folder.CreateFileAsync("answer.txt",
        CreationCollisionOption.ReplaceExisting);
    await file.WriteAllTextAsync("42");
}