如何将大量XML放在一起并在Windows中进行转换
我在文件夹中有很多XML文件——一本书的一页对应一个XML。我需要将所有XML放在一个根XML文件中,然后使用XSL进行第一次转换以删除名称空间和不需要的属性(我有一个XSL样式表),保存新的XML,然后使用另一个样式表再次转换(我也准备好了),并保存结果文本文件。 我在家里用一个XML文件在氧气中完成,但我需要使这个过程自动化,用一些脚本运行它。我必须在没有氧气的Windows环境下工作,客户没有任何软件,希望自己制作。 如何在不使用编写根XML的情况下将XML组合在一起!实体标签?我可以使用哪些软件工具(用于XSL转换)?如何为Windows制作这样的脚本? 我用Python编程,也用Java编程。如何将大量XML放在一起并在Windows中进行转换,xml,windows,xslt,cmd,Xml,Windows,Xslt,Cmd,我在文件夹中有很多XML文件——一本书的一页对应一个XML。我需要将所有XML放在一个根XML文件中,然后使用XSL进行第一次转换以删除名称空间和不需要的属性(我有一个XSL样式表),保存新的XML,然后使用另一个样式表再次转换(我也准备好了),并保存结果文本文件。 我在家里用一个XML文件在氧气中完成,但我需要使这个过程自动化,用一些脚本运行它。我必须在没有氧气的Windows环境下工作,客户没有任何软件,希望自己制作。 如何在不使用编写根XML的情况下将XML组合在一起!实体标签?我可以使用
非常感谢。请参阅有关如何使用的XSLT规范。要将XML文件放在一起以便可以将它们作为一个文件进行处理,一个选项是编写cmd.exe批处理脚本,该脚本生成一个根XML文件,其中包含对所有XML文件的外部实体引用 可能是这样的(假设不带扩展名的XML文件名是允许的实体名):
@echo off
del root.xml 2> nul
(
echo ^<!DOCTYPE root [
for %%f in (*.xml) do (echo ^<!ENTITY %%~nf SYSTEM "%%f"^>)
echo ]^>
echo ^<root^>
for %%f in (*.xml) do (echo ^&%%~nf;)
echo ^</root^>
) > root.tmp
move root.tmp root.xml > nul
msxsl root.xml stylesheet.xsl