繁体   English   中英

ansi 到 unicode 转换

[英]ansi to unicode conversion

在解析某些文档时,我得到了字符代码 146,它实际上是一个 ANSI 数字。 将字符写入文本文件时,没有显示任何内容。 如果我们将字符写为 Unicode 编号 - 8217,则字符显示正常。

谁能给我关于如何在 C# 中将 ANSI 编号 146 转换为 Unicode 8217 的建议。

参考: http://www.alanwood.net/demos/ansi.html

谢谢

“ANSI”确实是用词不当——有许多编码通常被称为“ANSI”。 但是,如果您确定需要代码页 1252,则可以使用:

Encoding encoding = Encoding.GetEncoding(1252);
using (TextReader reader = File.OpenText(filename, encoding))
{
    // Read text and use it
}

或者

Encoding encoding = Encoding.GetEncoding(1252);
string text = File.ReadAllText(filename, encoding);

那是为了读取文件 - 写入文件是相同的想法。 基本上,当您从二进制(例如文件内容)转换为文本时,请使用适当的Encoding object。

我的建议是阅读Joel 的“每个软件开发人员必须了解的关于 Unicode 和字符集的绝对最低要求。您的问题涉及很多内容,我的经验是,如果您不明白,您只会与简单的答案作斗争这些基础知识。阅读大约需要 15 分钟。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM