从本地应用程序数据(Metro 应用程序)读取 *.htm 文件时出现异常
Exception reading *.htm file from local app data (Metro App)
我正在使用 FileIO.ReadTextAsync()
读取我保存到 "ms-appdata:///local" 中的 *.htm 网页,使用 Utf8 编码。
但是我在做的时候得到了 System.ArgumentOutOfRangeException
。附加信息是 No mapping for the Unicode character exists in the target multi-byte code page
.
使用相同的函数读取普通的 *.txt 文件效果很好。我做错了什么?
编辑:代码
async private void Button_Click(object sender, RoutedEventArgs e)
{
StorageFile SF = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appdata:///local/test3.html"));
string html = await FileIO.ReadTextAsync(SF, Windows.Storage.Streams.UnicodeEncoding.Utf8);
}
使用 Visual Studio 更改文件编码。当我打开文件时,它的编码是:"Western European (Windows) - Codepage 1252"
- 打开 Visual Studio
中的文件
- 文件 > 高级保存选项...>
- 将编码更改为"Unicode (UTF-8 with signature) - Codepage 65001"
- 保存文件
我正在使用 FileIO.ReadTextAsync()
读取我保存到 "ms-appdata:///local" 中的 *.htm 网页,使用 Utf8 编码。
但是我在做的时候得到了 System.ArgumentOutOfRangeException
。附加信息是 No mapping for the Unicode character exists in the target multi-byte code page
.
使用相同的函数读取普通的 *.txt 文件效果很好。我做错了什么?
编辑:代码
async private void Button_Click(object sender, RoutedEventArgs e)
{
StorageFile SF = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appdata:///local/test3.html"));
string html = await FileIO.ReadTextAsync(SF, Windows.Storage.Streams.UnicodeEncoding.Utf8);
}
使用 Visual Studio 更改文件编码。当我打开文件时,它的编码是:"Western European (Windows) - Codepage 1252"
- 打开 Visual Studio 中的文件
- 文件 > 高级保存选项...>
- 将编码更改为"Unicode (UTF-8 with signature) - Codepage 65001"
- 保存文件