vb.net字符集

Con*_*ght 4 vb.net character-encoding character-set

根据MSDN,vb.net使用此扩展字符集.根据我的经验,它实际上使用这个:

替代文字

  1. 我错过了什么?为什么它说它使用一个并使用另一个?
  2. 难道我做错了什么?
  3. 是否有某种转换工具到原始字符集?

Hei*_*nzi 6

此行为在Chr命令的文档中定义:

返回值取决于当前线程的代码页,该代码页包含在System.Globalization命名空间中TextInfo类的ANSICodePage属性中.您可以通过指定System.Globalization.CultureInfo.CurrentCulture.TextInfo.ANSICodePage来获取ANSICodePage.

因此,Chr大于127的值的输出取决于系统.如果需要可重现的结果,请Encoding通过调用Encoding.GetEncoding(String)创建所需的实例,然后使用Encoding.GetChars(Byte())将数值转换为字符.

如果您在问题中链接的图表中上升一级,您将看到他们并未声称此图表始终是该Chr命令的输出:

Windows 127中出现的字符取决于所选的字体.

本节中的图表显示了控制台应用程序的默认字符集.

您的应用程序是WinForm应用程序,而不是控制台应用程序.即使在控制台中,也可以更改使用的字符集(例如,通过使用chcp命令),因此单词"default".

有关.net中使用的编码的详细信息,我建议使用以下MSDN文章:.NET Framework中的字符编码.