【发布时间】:2025-12-05 05:40:02
【问题描述】:
我正在使用二进制数据中的 Shift-JIS 编码字符串解析文件。我目前的代码是这样的:
public static string DecodeShiftJISString(this byte[] data, int index, int length)
{
byte[] utf8Bytes = Encoding.Convert(Encoding.GetEncoding(932), Encoding.UTF8, data);
return Encoding.UTF8.GetString(utf8Bytes);
}
它工作得很好,我可以从这个方法中获取可用的字符串,但是当我在我的 WinForms 应用程序中显示带有拉丁字符的字符串时,我发现这些字符比正常的要宽。
Latin characters in Shift-JIS string
我不确定这是否是我的编码逻辑的问题,或者我应该显示字符串的方式(我只是将它们直接传递到我的控件中)。任何帮助将不胜感激!
【问题讨论】: