Reading Windows-1252 encoding in Windows Phone 8

馋奶兔 提交于 2019-11-30 18:48:18

问题


In Windows, I can use the Encoding.GetEncoding ("Windows-1252") via .NET to retrieve the "Windows-1252" code page encoding. Unfortunately, this call throws an ArgumentExtception in Windows Phone 8 emulator, specifying that the encoding name is not valid. I looked around MSDN but didn't find anything useful. Does anyone know about which encodings are available in Windows Phone 8 and which is the new name of the "Windows-1252" encoding?

And yes, I am aware of the alternative option of using the "iso-8859-1" encoding and manually substituting the characters in the 129-159-range. But I'm trying to avoid that if possible.

Many thanks, Michael


回答1:


I am not sure this still works but remember it was useful. This tools generates the source code for a single byte code pages

http://www.hardcodet.net/2010/03/silverlight-text-encoding-class-generator

I hope the generated source works in windows phone subset of the base class library.




回答2:


As the exception message so clearly told you, the framework subset on Windows Phone doesn't come with support for Windows-1252. As you say, using Latin-1 (ISO-8859-1) is a way to do it.

Alternatively you can implement the encoding manually, which I wouldn't recommend.




回答3:


How about trying MultiByteToWideChar(Win32 API)?

Sample code is here.

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

This is a samplle for CP-932(Shift JIS). Create a new "Windows Phone Runtime Component"(C++) project, then copy the code. Change the constant "CP_SJIS" for you, please.

In addition, I don't know whether CP-1252(Windows-1252) is effective on WP8.



来源:https://stackoverflow.com/questions/14110730/reading-windows-1252-encoding-in-windows-phone-8

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!