所以我有这个方法打印出从文本文件到列表视图的几行但是每当它执行时它会使用诸如“Åå,Ää,Öö”之类的字符,并使它们成为奇怪的符号,如三角形和东西。 我尝试将它们转换为UTF-8字符,但它给了我相同的输出。
private void btnSort_Click(object sender, EventArgs e)
{
//Convert to utf8
string[] Accounts = File.ReadAllLines(filePath); // if null do something
foreach (string account in Accounts)
{
ListViewItem lvi = new ListViewItem(account);
listView1.Items.Add(lvi);
}
}
这就是文本文件列表的样子
是的,就是这样。Gräsklippare@hotmail.com
Åkerström@gmail.com
答案 0 :(得分:1)
File.ReadAllLines
有一个需要编码的重载。使用该文件使用的任何编码(显然不是UTF8)来调用它
答案 1 :(得分:0)
正如@KevinGosse指出的那样,File.ReadAllLines()有一个带有编码的重载,这组字符所需的编码是UTF-7
工作代码
private void btnSort_Click(object sender, EventArgs e)
{
//Convert to utf8
string[] Accounts = File.ReadAllLines(filePath, Encoding.UTF7); // if null do something
foreach (string account in Accounts)
{
ListViewItem lvi = new ListViewItem(account);
listView1.Items.Add(lvi);
}
}