Windows phone 7 Encoding.GetEncoding(“CP437”)在WindowsPhone7中

Windows phone 7 Encoding.GetEncoding(“CP437”)在WindowsPhone7中,windows-phone-7,silverlight-4.0,Windows Phone 7,Silverlight 4.0,我是Silverlight 4和Windows Phone 7开发方面的新手 我的要求: // It Gives error: 'CP437' is not a supported encoding name. // (The same line works fine in C#.Net Console Application) Encoding enc = Encoding.GetEncoding("CP437"); byte[] ByteArray = { 6

我是Silverlight 4和Windows Phone 7开发方面的新手

我的要求:

  // It Gives error: 'CP437' is not a supported encoding name.   
  // (The same line works fine in C#.Net Console Application)  

  Encoding enc = Encoding.GetEncoding("CP437");  
  byte[] ByteArray = { 65, 127, 171, 174, 175, 171, 66, 0 };  
  char[] CharArray = enc.GetChars(ByteArray);

任何关于如何在Windows Phone 7(C#.Net 4.0)中实现Encoding.GetEncoding(“CP437”)的指针。

我记得,代码页437是原始的IBM PC字符集。这在Windows Phone上不可用,据我所知,它永远不会可用。正如您在这里所看到的A½«»B大多数示例字符都可以从unicode中获得,只需要一个翻译表,但是一些像DEL字符和IBM划线字符(不在示例中,但存在于代码页437中)这样的字符集需要专门的字符集,如Terminal(一种古老的位图字体)


如果您提供了有关用途的更多信息,您可以通过编写代码或使用一些代码生成器从Desktop.NET生成Silverlight的自定义编码类

查看此链接以获取详细信息和工具:


Peter感谢您的回复-我尝试了1252(Windows 1252)代码页,但也不起作用(相同的结果,即“1252不是受支持的编码名称”)。我不知道Windows Phone 7支持哪个代码页。我的要求是:我有字节(即0到255的值)的图像原始数据,我想把这些字节转换成字符串。我在0到127之间转换值没有问题,但是对于128到255,我得到了错误的值或字符串中的“?”值,我认为我需要使用正确的编码来转换所有这些字符,这就是我尝试编码的方式。GetEncoding(“CP437”)/(“1252”)没有运气