XmlDocument.LoadXml(string) 转换问题

本文介绍了一种解决C#中使用LoadXML方法时遇到的问题的方法。由于LoadXML要求传入UTF-16编码的字符串,文章提供了一个替代方案:通过使用Load方法,并将UTF-8编码的字符串转换为内存流进行加载。

C#使用LoadXML要求传入的字符串必须为UTF-16编码(奇怪的要求)

解决方案是不用LoadXML方法,改用Load方法读取 代码如下:

XmlDocument doc = new XmlDocument();
string str = ".......";
 
byte[] encodedString = Encoding.UTF8.GetBytes(str);
System.IO.MemoryStream ms = new System.IO.MemoryStream(encodedString);
ms.Flush();
ms.Position = 0;
doc.Load(ms);
完毕!

转载于:https://www.cnblogs.com/liang-ling/p/3967272.html

XmlException: invalid data. System.Xml.XmlStreamReader.Read (System.Char[] dest_buffer, Int32 index, Int32 count) Mono.Xml2.XmlTextReader.ReadTextReader (Int32 remained) Mono.Xml2.XmlTextReader.PeekChar () Mono.Xml2.XmlTextReader.ReadContent () Mono.Xml2.XmlTextReader.Read () System.Xml.XmlTextReader.Read () UnityEditor.AndroidXmlDocument..ctor (System.String path) UnityEditor.AndroidManifest..ctor (System.String path) UnityEditor.Android.PostProcessAndroidPlayer.CopyMainManifest (System.String target, System.String playerPackage) UnityEditor.Android.PostProcessAndroidPlayer.PostProcessInternal (System.String stagingAreaData, System.String stagingArea, System.String playerPackage, System.String installPath, System.String companyName, System.String productName, BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry) UnityEditor.Android.PostProcessAndroidPlayer.PostProcess (BuildTarget target, System.String stagingAreaData, System.String stagingArea, System.String playerPackage, System.String installPath, System.String companyName, System.String productName, BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry) UnityEditor.Android.AndroidBuildPostprocessor.PostProcess (BuildPostProcessArgs args) UnityEditor.PostprocessBuildPlayer.Postprocess (BuildTarget target, System.String installPath, System.String companyName, System.String productName, Int32 width, Int32 height, System.String downloadWebplayerUrl, System.String manualDownloadWebplayerUrl, BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/PostprocessBuildPlayer.cs:316) UnityEditor.HostView:OnGUI()
最新发布
07-11
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值