`

xml合并

 
阅读更多

利用xslt模板进行合并

	/*
	 * 合并xml文件
	 */
	public void testMerge() throws Exception{
		
		String aa = "F:/workspace/bme/mystudy/uconfig/11.xml";
		String bb  = "F:/workspace/bme/mystudy/uconfig/22.xml";
		System.out.println(XmlUtil.DOM2String(mergeDocumentByXslt(getDocumentByUrl(aa),getDocumentByUrl(bb))));
	}
	
    private Document mergeDocumentByXslt(Document defaultDocument, Document mergedDoc) throws Exception
    {
    	TransformerFactory factory =  new TransformerFactoryImpl();
    	InputStream in = new File("F:/workspace/bme/mystudy/uconfig/uconfig-merge.xslt").toURL().openStream();
    	Templates templates = factory.newTemplates(new StreamSource(in));
        Transformer transformer = templates.newTransformer();
        javax.xml.transform.Source source = new DOMSource(defaultDocument);
        NodeSet nodeSet = new NodeSet(mergedDoc.getChildNodes());
        transformer.setParameter("with", nodeSet);
        Document transformedDoc = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
        DOMResult result = new DOMResult(transformedDoc);
        transformer.transform(source, result);
        return transformedDoc;
    }
    
    private Document getDocumentByUrl(String fileName) throws Exception{
    	  DOMParser parser = new DOMParser();
          parser.setFeature("http://xml.org/sax/features/validation", false);
          parser.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false);
          InputStream aa = new FileInputStream(fileName);
          parser.parse(new InputSource(aa));
          Document doc = parser.getDocument();
          aa.close();
          return doc;
    }
 
分享到:
评论

相关推荐

    xml合并工具 gooseeker

    Gooseeker,作为一个XML合并工具,旨在帮助用户有效地整合和管理多个XML文件,实现数据的集中和统一处理。这个工具可能包含了一系列功能,如文件选择、数据预览、合并操作、格式验证等,以简化XML文件处理过程。 ...

    flex-xml合并,树查找xml

    XML合并通常涉及将多个XML文档整合为一个单一的文档,以便于统一管理和操作。在Flex中,我们可以利用XML对象的appendChild()方法将一个XML节点添加到另一个XML节点的末尾,从而实现XML文档的合并。同时,还可以使用...

    xml多个文件合并(delphi)

    在提供的源码中,Unit1.pas可能是主要的代码单元,包含了处理XML合并的逻辑。`.bak`文件是备份文件,`.dcu`是编译后的单元文件,`.ddp`是项目文件,`.dfm`是表单文件,`.dpr`是项目主文件,`.res`是资源文件,它们...

    python通用模块,合并xml格式文件

    将多个xml格式文件,高效合并为一个标准的xml格式文件,输出为一个xml格式文件。注:在文件层面的操作,不需要逐个解析节点。

    maven-xmlmerger-plugin:Maven插件,用于处理简单的XML合并

    #Maven XML合并插件插件Maven,它允许将XML文档与另一个由XDT处理说明注释的文档合并例如,合并此XML文档< Root xss=removed> < Logging> < Logger xss=removed xss=removed xss=removed> </ Logging></ Root> 与此...

    合并2个结构相同的xml文件

    在本次的任务中,我们将探讨如何使用XSL来合并两个结构相同的XML文件。 首先,理解XML文件的结构至关重要。XML文件由一系列元素组成,每个元素都有一个唯一的标签,可以包含文本、属性以及子元素。当两个XML文件...

    jxls2.0支持合并单元格

    jxls2.0支持合并单元格和合并单元格模板写入数据,jar包里已经包含了pom.xml,可以自行解压方便上传到maven私服,这种方式会带上依赖,否则要一个个手动添加依赖.pom在jar包里jxls-core\2.0\jxls-core-2.0\META-INF\...

    xml多行变一行工具xml多行变一行工具

    XML(eXtensible Markup Language)是一种用于存储和传输数据的标记语言,广泛应用于Web应用程序、数据交换和配置文件等领域。在开发过程中,有时我们可能遇到XML文件以多行格式呈现,这在某些IDE(集成开发环境)中...

    Seal:A Gradle Plugin to resolve AndroidManifest.xml merge conflicts. 处理 AndroidManifest.xml 合并冲突的 Gradle 插件

    Seal是用于解决AndroidManifest.xml合并冲突的Gradle插件。 要注意的是,除了删除标签外,任何其他删除/更新功能都应始终将“ tools:replace”,“ tools:remove”以及提供的其他正式功能视为更高优先级。 Seal...

    C# 实现的XML读写合并

    本教程将深入讲解如何使用C#来实现XML文件的读取、写入和合并。 首先,我们来讨论XML的读取。在C#中,可以使用`System.Xml`命名空间中的`XmlDocument`类来加载和解析XML文件。以下是一个简单的示例: ```csharp ...

    ant打jar包时, 怎么把所依赖的jar包与从源码中编译过来class文件合并成最终的一个jar?

    Ant是一个流行的Java构建工具,它允许我们通过配置XML文件(build.xml)来执行自动化构建任务,包括jar文件的创建和合并。下面我们将详细讨论如何使用Ant实现这个目标。 首先,确保你已经安装了Ant,并且在项目中...

    android 三种xml解析方式整合

    在Android开发中,XML(eXtensible Markup Language)是一种常用的数据存储和交换格式,用于配置文件、数据传输等场景。对于XML的处理,Android提供了三种主要的解析方式:DOM(Document Object Model)、SAX...

    junit-report-merger:将多个JUnit XML报表合并为一个

    合并报告合并 将多个JUnit XML报表合并为一个。 许多测试框架的报告者都会生成JUnit XML报告。 , 。 有时需要将多个报告合并到一个文件中。 这就是junit-report-merger所做的。 通过从所有XML报告中收集所有元素并...

    tool-mergex:AUTOSAR XML合并工具

    工具合并 安装 python ./setup.py install git配置 首先是定义合并驱动程序。 这是在.gitconfig或.git/config文件中完成的: [merge "mergex-arxml"] name = A custom merge driver used to resolve conflicts in ...

    XmlFileCombiner.sfx.rar

    8. **错误处理**:一个良好的XML合并工具应具备错误处理机制,比如当遇到格式错误的XML文件或无法读取的文件时,能够提供清晰的错误信息。 9. **文件编码**:XML文件可能有不同的字符编码,合并时需要考虑这些差异...

    java合并xml1

    在Java编程中,合并XML1是一项常见的任务,特别是在处理大量数据或者需要整合多个XML源时。XML(Extensible Markup Language)是一种用于标记数据的语言,它提供了结构化的方式来存储和交换信息。下面,我们将深入...

    js-merge-xml:合并多个XML源

    MergeXML将XML源(文件,字符串,对象)合并为单个DOM XML对象。 合并在节点级别上递归执行,添加新元素并替换现有元素。 具有相同路径/名称的节点将按顺序替换/添加,并且可以通过选项控制修改。 在需要从多个...

    merge_junit_report:一种快速通道插件,可将多个junit报告合并为一个

    input_files : [ '/run0/report.xml' , '/run1/report.xml' , '/run2/report.xml' ] ] , output_file : 'output/report.xml' ) input_files包含要合并的junit报告路径的数组 output_file是最终合并报告的路径。 ...

    springboot+mybatis+mysql 增删改查

    使用springboot和mybatis操作mysql数据库的示例, 开发环境:idea2018.02+maven3.0.5 ...3、mysql内是使用mapper xml实现数据查询, 与mysql同级目录src - BACK是mapper类与xml合并到一起,实现了数据增删改查,供参考

    Java中合并XML文档的设计与实现

    本文将深入探讨如何在Java中合并XML文档,这涉及到XML解析、DOM模型以及递归复制元素等技术。 首先,XML文档的合并不是简单的文本拼接,因为XML有严格的语法规则,如开始标签必须与结束标签配对。在Java中,我们...

Global site tag (gtag.js) - Google Analytics