草庐IT

@Async失效情况

全部标签

php - 如何在保留 DOM 的情况下解析 XML 时获取详细的错误信息?

我正在构建一个Web表单,我站点的管理员可以在其中将XML添加到文本区域并将其提交以存储在数据库表中,但我对解析XML的最佳方法有点困惑。PHP脚本需要解析XML,如果有任何解析错误,它应该将错误消息和解析器停止的行/列返回给提交表单的管理员。解析后,它需要访问DOM以使用XPath对节点和属性的存在性进行多次检查。如果我使用xml_create_parser()和xml_parse(),如果返回false,我可以获得详细的错误信息。但是,解析后我无法访问XML的DOM。如果我使用DOMDocument::loadXML(),根据我的阅读,它不会为解析错误抛出异常,它只是将它们输出到P

c# - 使用 LINQ 查询 XML 并在不存在的情况下使用 null 代替特定的 xml 属性

我有一个模型类publicclassItem{publicstringName{get;set;}publicstringDesc{get;set;}}我会查询我的XML文档Listitem=xmlDoc.Descendants().Select(o=>newItem{Name=o.Attribute("name").Value,Desc=o.Attribute("desc").Value}).ToList();但是,desc属性可能存在也可能不存在于每个项目中。如果属性desc存在,则上述LINQ工作,但如果不存在,将导致异常。如果它不存在,我希望LINQ查询将null分配给新Ite

c# - 在不知道名称的情况下从节点解析多个元素

这当然是一个非常简单的问题,但我已经搜索了2页的Google结果,仍然没有找到答案。基本上,我有一个这样的XML:value1value2value3这个结构有多个部分。我想做的是在不知道这些“集合”确切名称的情况下将其解析为字典。所以,在解析之后应该是这样的:section1[set1]对于set2等也是如此。如何使用LINQtoXML实现此目的? 最佳答案 varxdoc=XDocument.Load(path_to_xml);varsection1=xdoc.Descendants("set")//orxdoc.Root.El

c# - 如何在没有模式信息的情况下将 c# 对象序列化为 xml?

这个问题在这里已经有了答案:HowcanImakethexmlserializeronlyserializeplainxml?(4个答案)关闭8年前。这是我做的:一个可序列化的类:[Serializable()]publicclassTicket{publicstringCitationNumber{get;set;}publicdecimalAmount{get;set;}}然后将一个模型序列化成xml:varmodel=cart.Citations.Select(c=>newTicket(c.Number,c.Amount)).ToList();varserializer=newX

java - 在没有 web.xml 的情况下使用 Spring (Boot) 配置 CAS

我正在使用Boot将WebApp从Spring3移植到Spring4。下面是原来的web.xmlorg.jasig.cas.client.session.SingleSignOutHttpSessionListenerCASAuthenticationFilterorg.jasig.cas.client.authentication.AuthenticationFiltercasServerLoginUrlhttps://casserver/loginserverNamehttp://myappCASValidationFilterorg.jasig.cas.client.valida

xml - 有没有一种方法可以在不使用 firebug 或 xpath 的情况下学习 xpath,因为 firefox 不支持插件?

我正在尝试广泛地学习xpath我需要一些实用的方法,youtube上的每个教程都建议安装firebug,mozillafirefox中的xpathcheckersaddons但不幸的是ff不支持它作为初学者请给我建议动手学习。尝试下载旧版本仍然没有可用的附加组件或插件 最佳答案 这是适用于所有浏览器的简单方法。使用控制台适用于所有浏览器您可以在浏览器控制台中使用“$x”执行任何xpath,如下所示。这是通用符号$x("xpathgoeshere"),这将返回数组,所以如果你想获得第一个匹配元素,那么你必须执行类似这样的操作$x("x

c# - 如何在给定 XmlWriter 的情况下创建 XDocument?

我们有一种将XML写入XmlWriter的方法,我们使用它直接生成XML流,而无需通过某种形式的DOM。然而,有些情况下我们确实想要创建一个DOM。一种方法是始终构建DOM并从中流式传输(以满足这两种要求),但我们喜欢直接编写XML的性能。因此,我们希望从XmlWriter构建DOM。参见HowtocreateaXmlDocumentusingXmlWriterin.NET?有关如何从XmlWriter创建XmlDocument的示例,尽管使用了稍微偏离轨道的代码模式。如果我想要XDocument(或XElement子树),是否有类似的选项? 最佳答案

c# - 如何在不将整个文件加载到内存的情况下更新 xml 文件

我们如何在不将xml文件完全加载到内存的情况下更新它。在下面的代码中,我想浏览每个父节点注释并更新to节点的值。我们如何使用C#实现此目的。我必须根据代码中的一些其他计算更新to字段。JaniToveJohnDoe 最佳答案 您可以使用XmlReader和XmlWriter的流式处理方法,您只需从阅读器中写出除您需要更改的部分之外的所有内容。ScottHanselman有一个blog使用此技术发布。 关于c#-如何在不将整个文件加载到内存的情况下更新xml文件,我们在StackOverf

xml - Linq to XML - 仅在某些情况下创建 Xelement

我是linqtoxml的新手,正在尝试执行以下操作。我正在根据收到的一些对象创建一个新的xml。我有一个名为“Scale”的XElement有一个bool值“DynamicScale”,如果它是False,我需要创建两个XElements作为Scale的后代,如果它是是的,我不需要这些元素。010000有什么办法可以在创建这个的过程中添加一个If语句吗?或者任何其他建议来处理这种需求?如果我希望能够做到这一点(我知道这是不可能的)。欢迎使用任何简单的方法。newXElement("Scale",newXAttribute("DynamicScale",c.DynamicScale),i

c# - XmlTextReader 在不识别的情况下传递了 XML 文档的末尾

我正在尝试创建一个简单的应用程序,该应用程序使用SAX(XmlTextReader)从流中读取XML,该流不仅包含XML,还包含二进制blob和文本等其他数据。流的结构简单地基于block。当进入我的阅读功能时,流正确定位在XML的开头。我已将问题简化为以下代码示例:stringxml=""+(char)0x014;XmlTextReaderreader=newXmlTextReader(newStringReader(xml));reader.MoveToContent();reader.ReadStartElement("Models");由于字符串末尾的0x014,这几行在调用R