在Windows中,我可以通过.NET使用Encoding.GetEncoding ( "Windows-1252“)来检索”Windows-1252“代码页编码。不幸的是,此调用在Windows phone8模拟器中抛出ArgumentExtception,指定编码名称无效。我在MSDN周围看了看,但没有找到任何有用的东西。有人知道Windows Phone 8中提供了哪些编码吗?哪种编码是"Windows-1252“编码的新名称?
是的,我知道另一种选择,即使用"iso-8859-1“编码并手动替换129-159范围内的字符。但如果可能的话,我会尽量避免这种情况。
非常感谢,迈克尔
发布于 2013-01-01 21:33:42
我不确定这是否仍然有效,但请记住它是有用的。此工具生成单字节代码页的源代码
http://www.hardcodet.net/2010/03/silverlight-text-encoding-class-generator
我希望生成的源码可以在基类库的windows phone子集中工作。
发布于 2013-01-01 21:26:21
正如异常消息清楚地告诉您的那样,Windows Phone上的框架子集不支持Windows-1252。正如您所说,使用拉丁-1 (ISO-8859-1)是一种方法。
或者,您也可以手动实现编码,我不建议这样做。
发布于 2013-01-02 09:47:05
试试MultiByteToWideChar(Win32 API)怎么样?
示例代码在这里。
http://bluewatersoft.cocolog-nifty.com/blog/2012/12/windows-phone-8.html
http://code.msdn.microsoft.com/wpapps/Windows-Phone-8-Shift-JIS-7ecd59fe/sourcecode?fileId=72228&pathId=1378915520
这是CP-932(Shift JIS)的示例。创建一个新的"Windows Phone运行时组件“(C++)项目,然后复制代码。请为您更改常量"CP_SJIS“。
另外,我不知道CP-1252(Windows-1252)在WP8上是否有效。
https://stackoverflow.com/questions/14110730
复制相似问题