jjzjj

xml - 在 VBA 中输出 MSXML2 XML 文档的文本时如何获取新行?

我在VBA中使用MSXML2.DOMDocument生成XML文档,然后将对象的XML属性发送到远程服务器(通过POST)。MSXML2.DOMDocument.XML中的结果字符串没有换行符,因此它是一大块XML。有没有办法让输出在每个XML元素之后放置一个新行,从而使文件更易于阅读?这不是必需的,因为服务器上收到的文件将立即被解析并将信息存储在SQL数据库中,但这将有助于开发和测试。 最佳答案 在将文件写入磁盘之前,您可以使用Replace函数将">"的每个实例替换为">"&vbCrLf.或者您可以将XML按原样保存到磁盘并使用

xml - MSXML:如何修改 SelectNodes 方法返回的节点

是否可以修改SelectNodes方法返回的节点的XML和/或文本?当我使用SelectSingleNode方法时,我总是可以修改返回节点的XML和文本属性:vXML:=CreateOleObject('MSXML2.DOMDocument.6.0')vXML.Load('...');vDoc:=vXML.DocumentElement;vNode:=vDoc.SelectSingleNode(XPath);vNode.XML:='Myvalue';//Workshere但是当我尝试更改SelectNodes方法返回的节点时,我遇到了“参数数量无效”OLE异常vValue:=vDoc.

xml - 是否可以使用 MSXML DOM 通过 XPath 创建新的 xml 元素?如何?

是否可以使用MSXMLDOM使用XPath(或另一种路径)创建新的xml元素?(函数名虚构但可以理解)类似于:noden=document.create_node("library/book/title");n.set_value("Perfectcode")应该创建:Perfectcode这里的要点是在一行library/book/title中创建层次结构。 最佳答案 无法使用XPath创建节点。如果您想调用“另一种路径”,则可以使用XQuery。我不知Prop体是否有针对MSXMLDOM运行的XQuery实现,但看起来很有可能。

xml - MSXML2 和 .net - 遗留代码

我们有一个遗留代码,它使用MSXML2和vb6,运行良好。最近我们将项目转换为VB.NET,当xml变大时我们遇到了msxml问题-基本上它挂了。谷歌搜索问题后,我们发现这篇文章说TheuseofMSXMLisnotsupportedin.NETapplicationshttp://support.microsoft.com/kb/815112我想知道是否有人知道可以模仿msxml的功能但仍然可以与.NET一起工作的第三方组件。另一种选择是重写那些代码部分(使用system.xml或linq)非常痛苦,因为我们的应用程序中大量使用MSXML。谢谢,皮尼。 最

xml - VBA MSXML2.ServerXMLHTTP 响应文本是一个 HTML 页面

我一直在四处寻找,但找不到任何方法来做我想在这里做的事情。它甚至可能不可能,但我正在使用MSXML2驱动程序连接到网页。我得到的响应文本只是网页的HTMl。不完全是我想要的,但我也许可以使用它。从那里,我想尝试将HTML文档对象设置为该响应文本,因为它只是一个HTML页面,但我得到了类型不匹配。我不确定这是否会让我更接近于解决我的问题,但我认为在这里值得一问。这是我正在做的:SubGetResponseText()DimDocumentasHTMLDocumentDimxmlHTTPAsMSXML2.ServerXMLHTTPSetxmlHTTP=NewMSXML2.ServerXML

xml - XML 模式中根元素的定义不正确

有一个模式包含以下无聊的根元素:就我而言,架构是有效的,例如,Excel读取它没有问题。但是,当我尝试使用MSXML(v3或v4或v6)针对此架构验证内容时,我收到了主题错误。(我创建了XMLSchemaCache,当我将加载的模式添加到其中时发生错误。)我从Google得知MSXML引擎存在概念上的问题,不符合W3标准,必须使用不同的namespace定义。但是,我既找不到更正确的定义,也找不到对问题的任何体面的解释。我只能在论坛上找到很多没有回复的帖子。有没有人能把这件事解释得更深入一点?编辑出于某种原因,尽管我通过版本3、4和6循环引用项目,但一直使用版本3。强制切换到4/6解决

xml - 使用Delphi如何确定系统中是否安装了MSXML6?

我有一个依赖于MSXML6的应用程序,在部署应用程序时,大多数机器上已经安装了这个包,但在少数情况下没有安装MSXML6,问题是我如何检查MSXML6是否已经安装? 最佳答案 您可以使用CLSIDFromProgID检查注册表中是否存在CLSID函数,对于MSXML,CLSID是Msxml2.DOMDocument.6.0检查这个示例应用usesActiveX,SysUtils;{Msxml2.DOMDocument.2.6Msxml2.DOMDocument.3.0Msxml2.DOMDocument.4.0Msxml2.DOMD

xml - 使用 MSXML 更改 XML 标记元素的节点名称

我想更改MSXMLXMLDOMElement的标记名称,但遗憾的是nodeName属性是只读的。有什么直接的方法可以做到这一点,或者我是否需要通过插入/替换和深度复制子项来解决?......sub-elements...应该变成......sub-elements... 最佳答案 这是使用MSXML接口(interface)的“通用”重命名节点函数(ObjectPascal),工作正常并且可能可用:functionRenameXMLTag(e:IXMLNode;NewName:WideString):IXMLNode;varDoc:

c# - MSXML 创建 XML "header"

我正尝试在VB6中使用MSXML创建一个XML文件,然后可以将其反序列化为C#中的对象。我试图模仿的XML看起来像这样1234510.32456325.43我的问题是如何使用MSXML库创建以下行?IE:如何创建未终止的“header”值? 最佳答案 看看这个similarquestion.YouneedtouseaMXXMLWriter60,insteadofsavingitdirectly....SeeIMXWriterfordetails. 关于c#-MSXML创建XML"head

xml - 按日期过滤 XPath 查询

我有一些示例XML,我在其中查询基于日期的节点。示例XML文档:dc396ebe-c8a4-4a7f-85b5-b43c1890d6bc2012-02-01T00:00:00-05:002406a5aa-0246-4cd7-bba5-bb17a993042b2013-02-01T00:00:00-05:002af49699-579e-4beb-9ab0-a58b4bee31582014-02-01T00:00:00-05:00所以基本上有三个日期:2/1/20122013年2月1日2/1/2014使用MSXML,我可以使用XPath查询按这些日期进行查询和过滤:/NewDataSet/