草庐IT

charset-utf

全部标签

.net - 使用 XmlSerializer 读取 UTF-16 编码的 XML 文件

我正在调用WebService并获取从WebMethod返回的字符串。该字符串是一个序列化为XML的对象,应使用System.Xml.XmlSerializer对其进行反序列化。我的问题是第一行表明文档是UTF-16编码的:所以当反序列化时,我得到错误:ThereisanerrorinXMLdocument(0,0).执行string.Replace("utf-16","utf-8")确实有效,但必须有一个干净的方法让XmlSerializer知道吗? 最佳答案 这不应该影响任何东西-以下工作正常:usingSystem;using

java - UTF-16 编码

JaniALOKAshuTosh我的XML解析器仅支持UTF-8编码,否则它会给出SAX解析器异常。如何将UTF-16转换为UTF-8? 最佳答案 在那种情况下,它不是您正在使用的XML解析器,请参阅section2.2ofthexmlspecification:AllXMLprocessorsMUSTaccepttheUTF-8andUTF-16encodingsofUnicodeJavaxml解析器通常接收包装在InputSource中的输入目的。这可以用一个Reader参数来构造,该参数对给定的字符集进行字符解码。InputS

java - Xml如何设置UTF-16编码格式?

我需要将xml创建为要传递给服务器的字符串。我已经设法将数据转换为xml,但编码格式默认设置为utf-8。我需要的是我想将它设置为utf-16格式。但我还没有设置它的任何想法。privatevoidXmlCreation(intsize,Listitem)throwsParserConfigurationException,TransformerException{DocumentBuilderFactorydocumentBuilderFactory=DocumentBuilderFactory.newInstance();DocumentBuilderdocumentBuilder

xml - java.nio.charset.UnmappableCharacterException : Input length = 1

完整错误信息:java.nio.charset.UnmappableCharacterException:Inputlength=1atjava.nio.charset.CoderResult.throwException(CoderResult.java:261)atsun.nio.cs.StreamEncoder.implWrite(StreamEncoder.java:266)atsun.nio.cs.StreamEncoder.write(StreamEncoder.java:106)atsun.nio.cs.StreamEncoder.write(StreamEncoder.

java - Xerces UTF8Reader 中导致 MalformedByteSequenceException 的编码问题

我遇到了com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException使用XML文件。我使用调试器逐步执行Xerces代码,并缩小了发生这种情况的范围。我能够确定通过删除文档中的“智能引号”字符,文档变得可解析。文档没有DTD。Notepad++将其标记为“作为UTF-8的ANSI”。Firefox将其称为“西方”。我记得在大学里听过一次不太惊心动魄的讲座,UTF-8被设计为与单字节编码系统向后兼容。我也看到onthischart,字节序列e2809d事实上,代表“右双引号”,但即使我看不到编码问题,我

xml - HTTP 'charset' 和 XML 'encoding' 不匹配

我遇到了一个返回带有UTF-8charset的HTTPContent-Typeheader的Web服务:Content-Type:text/xml;charset=UTF-8...以及值为ISO-8859-1(又名latin1)的XML声明encoding属性:当我尝试在Firefox中显示来自此Web服务的响应时,遇到á(smallletterawithacute).我对Firefox发出此解析错误并不感到意外。我想说的是,不等同于HTTP字符集的XML编码永远是正确的。我对吗?这种情况总是是否应该被视为网络服务器配置问题? 最佳答案

java - 如何在 javax.xml.transform.Transformer.transform 的输出中保留输入声明的编码? (例如避免将 UTF-16 更改为 UTF-8)

假设这个输入XML编写这些代码行:StreamSourcesource=newStreamSource(newStringReader(/*theaboveXML*/));StringWriterstringWriter=newStringWriter();StreamResultstreamResult=newStreamResult(stringWriter);TransformerFactory.newInstance().newTransformer().transform(source,streamResult);returnstringWriter.getBuffer().

c# - 在 C# (.Net 3.5) 中,是否可以使用标准文字常量来代替 "utf-8"?

我想找到一个更好的方法来做到这一点:XmlNodenodeXML=xmlDoc.AppendChild(xmlDoc.CreateXmlDeclaration("1.0","utf-8",String.Empty));我不想在键入代码时考虑“utf-8”与“UTF-8”与“UTF8”与“utf8”。我想让我的代码更不容易出现拼写错误。我确信某些标准库已将"utf-8"声明为const/readonly字符串。我怎样才能找到它?另外,“1.0”呢?我假设主要的XML版本也已在某处枚举。谢谢! 最佳答案 试试Encoding.UTF8.

python - Unicode解码错误: 'utf-8' codec can't decode byte 0xe2 in position 434852: invalid continuation byte

我正在使用hfcca计算C++代码的圈复杂度。hfcca是一个简单的python脚本(https://code.google.com/p/headerfile-free-cyclomatic-complexity-analyzer/)。当我尝试运行脚本以生成xml文件形式的输出时,出现以下错误:Traceback(mostrecentcalllast):"./hfcca.py",line802,inmain(sys.argv[1:])File"./hfcca.py",line798,inmainprint(xml_output([fforfinr],options))File"./hf

C# XmlWriter 和无效的 UTF8 字符

我们创建了一个单元测试,它使用以下方法生成随机UTF8文本:privatestaticRandom_rand=newRandom(Environment.TickCount);publicstaticbyteCreateByte(){return(byte)_rand.Next(byte.MinValue,byte.MaxValue+1);}publicstaticbyte[]CreateByteArray(intlength){returnRepeat(CreateByte,length).ToArray();}publicstaticstringCreateUtf8String(i