- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们打算将我们的框架从msxml4迁移到msxml6。
我们目前仍在使用msxsl.exe。
似乎仅支持高达4.0的MSXML版本,作为命令行
msxsl.exe -u版本6.0
告诉我。
是否有msxsl.exe的后继产品?
是否有其他命令行处理器?
最佳答案
有多种方法可以替换现有处理器,这仅取决于所需的功能级别以及是否需要特定于MSXML的功能。例如,存在xsltproc,它是libxslt的一部分(例如,可以从here获取一些Windows二进制文件)。 This页面为您提供了C#的快速替代方法,但它们都更改了命令行用法,并且可能未实现相同的MSXML扩展(xsltproc当然不会)。
如果您只对使用MSXML 6的简单命令行处理器感兴趣,那么可能会比使用简单的JScript应用程序做得更糟。将以下代码另存为xsltr.js并以cscript xsltr.js input.xml template.xsl output.txt的身份运行:
var adTypeBinary = 1;
var adSaveCreateOverWrite = 2;
var adSaveCreateNotExist = 1;
try
{
var args = WScript.Arguments;
if(args.length < 3)
{
WScript.Echo("Usage: xsltr.js file.xml file.xsl output.txt");
WScript.Quit(1);
}
else
{
var xml = args(0);
var xsl = args(1);
var out = args(2);
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.6.0");
var xslDoc = new ActiveXObject("Msxml2.DOMDocument.6.0");
/* Create a binary IStream */
var outDoc = new ActiveXObject("ADODB.Stream");
outDoc.type = adTypeBinary;
outDoc.open();
if(xmlDoc.load(xml) == false)
{
throw new Error("Could not load XML document: " + xmlDoc.parseError.reason);
}
if(xslDoc.load(xsl) == false)
{
throw new Error("Could not load XSL document: " + xslDoc.parseError.reason);
}
xmlDoc.transformNodeToObject(xslDoc, outDoc);
outDoc.SaveToFile(out, adSaveCreateOverWrite);
}
}
catch(e)
{
WScript.Echo(e.message);
WScript.Quit(1);
}
仍然有您不能使用msxsl的理由吗? MSXML 4.0版从来都不是标准安装,因此您总是必须手动安装(尽管我认为Office附带了它)。您是否可以在需要进行处理的计算机上部署版本4?
关于xslt - msxsl.exe的后继者?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2058247/
我们打算将我们的框架从msxml4迁移到msxml6。 我们目前仍在使用msxsl.exe。 似乎仅支持高达4.0的MSXML版本,作为命令行 msxsl.exe -u版本6.0 告诉我。 是否有ms
我有一个 XSL 转换,它使用 msxsl 在 C# 中添加扩展方法。我对 msxsl 进行了以下设置: 然后我有一个 c# 函数作为扩展方法: p
请帮帮我吧伙计们。我只是想声明一个简单的结果树片段并对其进行迭代。 ... one two three four ... 我完全误解了这是如何
我在这里进行了修复,我必须将 C# 代码中动态创建的 xml 作为参数传递给 xslt,然后从中获取值。 以下是示例xslt MYNODE 然后从 C# 中的
我使用的系统包含许多复杂的 XSL 转换,每个转换都处理大型 XML 文件。在将 XML 文件传递到我们的数据库之前,专有程序会在每个 XML 文件上编译 XSLT。 XSL 转换几乎总是涉及
我正在VB.NET中编写命令行应用程序。该应用程序正在调用另一个程序msxsl.exe,以运行XSL转换。我正在使用Process类来做到这一点: Dim process = New Process(
我有一个自定义的 Java 函数,它可以执行某些操作,我需要将其放入 XSL,以便它可以在选定的节点上执行某些操作。我是这样使用的: 声明命名空间: ... xmlns:msxsl="ur
我有以下 XSLT 代码: .... HtmlPermulations 的值如下: <root><item>Stationcar
我有一个 xml 文件,我需要将其转换为 txt,为此我使用了 xslt 转换。 我的 xslt 转换文件包含一些支持的 javascript 函数 如果我在 .net framework 4.5 及
我是一名优秀的程序员,十分优秀!