在 C# 中将拉丁语转换为英语编码
Convert Latin to English encoding in C#
我正在尝试将英文字符 ù
转换为 a
。
示例代码:
Encoding latinEncoding = Encoding.GetEncoding("Windows-1252");
Encoding ascii = Encoding.ASCII;
byte[] latinBytes = ascii.GetBytes(txt);
string asciiSring = latinEncoding.GetString(latinBytes);
我在 asciiSring
中得到的是 '?'而不是 'a'.
正确的做法是什么?
为什么用户在需要 'a' 时不插入 'a'?这似乎不是绝大多数应用程序应该关心的问题。它通常只存在于用户和 OS 之间。参见 "Text Services and Input Languages"。
尽管如此,应用程序可以通过分配 InputLanguage.CurrentInputLanguage
to one of InputLanguage.InstalledInputLanguages
来动态设置键盘布局。我不确定这对用户是否可见,因此如果应用程序提供控件或指示器就不会那么混乱。
我正在尝试将英文字符 ù
转换为 a
。
示例代码:
Encoding latinEncoding = Encoding.GetEncoding("Windows-1252");
Encoding ascii = Encoding.ASCII;
byte[] latinBytes = ascii.GetBytes(txt);
string asciiSring = latinEncoding.GetString(latinBytes);
我在 asciiSring
中得到的是 '?'而不是 'a'.
正确的做法是什么?
为什么用户在需要 'a' 时不插入 'a'?这似乎不是绝大多数应用程序应该关心的问题。它通常只存在于用户和 OS 之间。参见 "Text Services and Input Languages"。
尽管如此,应用程序可以通过分配 InputLanguage.CurrentInputLanguage
to one of InputLanguage.InstalledInputLanguages
来动态设置键盘布局。我不确定这对用户是否可见,因此如果应用程序提供控件或指示器就不会那么混乱。