如何从异步操作返回字符串
本文关键字:返回 字符串 异步操作 | 更新日期: 2023-09-27 18:24:29
我正在使用PCLStorage,需要一种读取文件的方法。我将使用JSON进行序列化,所以我只需要从文件中读取保存的内容:
public async string ReadFromFile(string filename)
{
IFolder rootFolder = FileSystem.Current.LocalStorage;
IFolder folder = await rootFolder.CreateFolderAsync("MySubFolder", CreationCollisionOption.OpenIfExists);
IFile file = await folder.GetFileAsync(filename);
string content = await file.ReadAllTextAsync();
return content;
}
但我不能返回字符串,它必须是void、Task或Task。
有没有一种简单的方法可以从这个方法返回字符串?也许通过调用另一种方法?
您需要返回一个Task<string>
,如下所示:
public async Task<string> ReadFromFile(string filename)
{
IFolder rootFolder = FileSystem.Current.LocalStorage;
IFolder folder = await rootFolder.CreateFolderAsync("MySubFolder",
CreationCollisionOption.OpenIfExists);
IFile file = await folder.GetFileAsync(filename);
string content = await file.ReadAllTextAsync();
return content;
}