jjzjj

xmlDocument

全部标签

c# - 出错时是否可以忽略异常?

我如何在C#中忽略异常?我正在读取一个远程xml文件,有时标签不存在并抛出异常。我如何忽略异常并转到下一步? 最佳答案 howdoiignoreexceptionsinc#?不要。异常试图告诉您您的代码有问题。如果您在XML解析期间因为特定元素不存在而遇到异常,请重写代码以在尝试读取它之前检查该元素是否存在。如果您询问如何处理特定的异常,那么您可以将其包装在try-catchblock中:XmlDocumentdoc=newXmlDocument();try{doc.Load(url);}catch(XmlException){//

c# - 从 xmlDocument 中选择特定的 xml 节点,然后更改 xml 节点的属性

我在C#的xml文档中有一个简单的xml节点,我想查询它,然后将visible属性的值设置为false。下面是xml。我需要能够通过节点名称(DGField)和text_id(Test.ChangeRank)选择节点。有谁知道如何做到这一点?提前致谢。 最佳答案 假设您的XmlDocument名为doc,那么以下内容应该有效。XmlNodenode=doc.SelectSingleNode("//DGField[@text_id='Test.ChangeRank']");if(node!=null){node.Attributes[

c# - 在大型 XML 文档中查找特定属性

我有一个大约100mb的大型XML文档。我需要在此文档中找到两个标签的属性。我可以使用与以下类似的代码来做到这一点:XmlDocumentxmlDocument=newXmlDocument();xmlDocument.Load("C:\\myxml.xml");XmlNodenode1=xmlDocument.SelectSingleNode("/data/objects[@type='datatype1']");if(null!=node1){result=node1["Version"].Value;}但是这样做会将整个XML加载到内存中,这似乎需要大约200mb。无论如何我可以

.net - XMLDocument dispose - 为什么它不支持 IDisposable?

XMLDocument类似乎是支持IDisposable的理想候选者,因为...它可能会保存大量数据。它代表一个可能复杂的数据模型。这将允许您在Using{...}语句中使用它,并且它会在使用后立即被垃圾回收。但是它似乎不支持它。在那种情况下,最好的处理方法是什么?或者它不需要支持IDisposable-我想您可以在完成它后将其引用设置为null吗?或者这里的主要区别是它不占用外部资源,例如数据库连接或外部文件,因此不需要IDispoable“支持”? 最佳答案 ThiswouldallowyoutouseitinsideaUsin

.net - XmlDocument.LoadXml() 挂了几分钟

我有一个从HTTP请求解析XML响应的例程,我使用XmlDocument.LoadXml来帮助完成这项工作。我指望此方法在错误的XML上抛出异常并在成功时返回加载的XmlDocument对象。我没想到的是它会在加载文档时挂起几分钟。当我在测试环境中运行此代码时,它会在100%的时间内挂起几分钟。在我看来像是.NET中的一些错误...DimtstringAsString=""tstring&=""&vbCrLftstring&=""&vbCrLftstring&=""&vbCrLftstring&=""&vbCrLftstring&="xmlns=""http://www.w3.org/

c# - XmlDocument.Load 替换 ">"

运行以下代码时:staticvoidMain(string[]args){varxmlDoc=newXmlDocument();varfileReader=newBinaryReader(File.Open(@"C:\Users\username\Desktop\doc.xlf",FileMode.Open,FileAccess.Read,FileShare.Read));varsourceStream=newMemoryStream(fileReader.ReadBytes((int)fileReader.BaseStream.Length));xmlDoc.Load(sourceS

c# - 如何通过 XML 中的 id 获取节点?

我正在通过id使用XML创建语言翻译XML:Word1_EnglishWord2_EnglishWord3_EnglishWord1_FrenchWord2_FrenchWord3_FrenchWord1_ChineseWord2_ChineseWord3_Chinese代码隐藏:XmlDocumentxmlDocument;FileInfofileInfo;XmlNodeListxmlNodeList;stringxPath="D:\XML\LanguagePack.xml";fileInfo=newFileInfo(xPath);xmlDocument=newXmlDocument

c# - 强制 XmlDocument 保存带有显式结束标记的空元素

我有以下代码:stringPathName="C:\\Users\\TestUser\\Documents\\Project";stringFileName="settings.xml";XmlDocumentSettings=newXmlDocument();Settings.Load(Path.Combine(PathName,FileName));XmlNodeKnowledgeNode=Settings.SelectSingleNode("/Config/Map/Knowledge");XmlNodeUsersNode=Settings.CreateNode(XmlNodeTy

c# - 我可以在 C# 中的另一个 XmlDocument 的节点内添加一个 XmlDocument 吗?

我有两个XmlDocuments。像这样的东西:和我想将document2放在document1的内部节点中,这样我最终得到一个包含以下内容的文档: 最佳答案 这是代码...XmlDocumentdocument1,document2;//Loadthedocuments...XmlElementxmlInner=(XmlElement)document1.SelectSingleNode("/document1/inner");xmlInner.AppendChild(document1.ImportNode(document2.

c# - XmlDocument.SelectSingleNode 为根节点返回 null

我有几个xml文件,它们的后缀不是.xml,而是.component现在我想在c#程序中处理它们,但是c#似乎连这些xml文件的根元素都找不到vardoc=newXmlDocument();doc.Load(path);//MG:editedtoLoadbasedoncommentXmlNoderoot=doc.SelectSingleNode("rootNodename");root好像是null,我应该怎么处理? 最佳答案 鉴于您已经解决了Load/LoadXml混淆问题,我认为问题出在命名空间上;你有示例xml吗?使用name