gpt4 book ai didi

c# - Windows Phone 8 - 在项目中的现有 txt 文件中读写

转载 作者:太空宇宙 更新时间:2023-11-03 21:37:12 26 4
gpt4 key购买 nike

您好,我遇到了一个问题,我创建了一个 txt 文件并将其放在应用程序中。我正在尝试从中读取我之前写在上面的内容。使用该代码:

    public async Task WriteDataToFileAsync(string fileName, string content)
{
byte[] data = Encoding.Unicode.GetBytes(content);

var folder = ApplicationData.Current.LocalFolder;
var file = await folder.CreateFileAsync(fileName,CreationCollisionOption.ReplaceExisting);

using (var s = await file.OpenStreamForWriteAsync())
{
await s.WriteAsync(data, 0, data.Length);
}
}

public async Task<string> ReadFileContentsAsync(string fileName)
{
var folder = ApplicationData.Current.LocalFolder;

try
{
var file = await folder.OpenStreamForReadAsync(fileName);

using (var streamReader = new StreamReader(file))
{
return streamReader.ReadToEnd();
}
}
catch (Exception)
{
MessageBox.Show("Error");
return string.Empty;
}
}

private async void functionWhereNeedReeding()
{
string contents = await this.ReadFileContentsAsync("myimportedfile.txt");
MessageBox.Show(contents);
}

总是给我错误信息,我不明白我的错误在哪里。希望你能帮助我。确保内容仍然是空的。

最佳答案

我最近在我的 WP 7 项目中创建了一个辅助函数,用于读取项目中包含的文本文件。你可以尝试使用它,该功能在 WP 8 项目中也有效:

public static class FileHelper
{
public static string ReadFile(string filePath)
{
var ResrouceStream = Application.GetResourceStream(new Uri(filePath, UriKind.Relative));
if (ResrouceStream != null)
{
Stream myFileStream = ResrouceStream.Stream;
if (myFileStream.CanRead)
{
StreamReader myStreamReader = new StreamReader(myFileStream);

return myStreamReader.ReadToEnd();
}
}
return "";
}
}

然后我可以这样使用该函数(在此示例中,文件位于 Assets 文件夹下):

var textFileContent = FileHelper.ReadFile(@"Assets\MyTextFile.txt");

关于c# - Windows Phone 8 - 在项目中的现有 txt 文件中读写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21135339/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com