将生成的xml用ie浏览器打开,就可以见到漂亮的缩进的xml schema.
但是每次都这样也不方便。在java程序中,直接使用jdk的javax.xml.transform.Transformer即可完成。
而且如果有节点未被匹配,也能通过错误提示及时发现。
先贴代码如下:
import java.io.File; import java.io.StringReader; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.transform.OutputKeys; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import org.w3c.dom.Document; import org.xml.sax.InputSource; public class XmlUtils { /** * @param args */ public static void main(String[] args) { SaveXMLWithIndent("<node><content>test</content><anotherNode/></node>","demo.xml"); } public static void SaveXMLWithIndent(String xml,String fileName) { try { Document doc = getDocumentFromString(xml); DOMSource src = new DOMSource(doc); //StreamResult sr = new StreamResult(System.out); StreamResult sr = new StreamResult(new File(fileName)); TransformerFactory tf = TransformerFactory.newInstance(); Transformer t = tf.newTransformer(); t.setOutputProperty(OutputKeys.INDENT, "yes"); t.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2"); t.setOutputProperty(OutputKeys.METHOD, "xml"); t.setOutputProperty(OutputKeys.ENCODING, "UTF-8"); t.transform(src, sr); }catch(Exception e) { e.printStackTrace(); } } public static Document getDocumentFromString(String xml) throws Exception { Document doc = null; DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); factory.setNamespaceAware(true); DocumentBuilder builder = factory.newDocumentBuilder(); doc = builder.parse(new InputSource(new StringReader(xml))); return doc; } }
最后效果如下:
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <node> <content>test</content> <anotherNode/> </node>
相关推荐
本文将深入探讨如何使用Java来格式化XML文件。 首先,我们需要了解Java中处理XML的基本库——`javax.xml.transform`和`javax.xml.parsers`。这两个包提供了处理XML的API,包括解析XML、转换XML以及格式化XML的功能...
idea统一java格式化xml文件
本文将围绕“XML格式化(换行,缩进)”这一主题,详细探讨如何使用C#语言对XML文档进行格式化操作,包括换行与缩进,从而让XML文档的结构更加清晰,便于人工阅读和调试。 ### XML格式化的重要性 XML文档本质上是...
如果你下载了名为“tidy_xml.py”的文件,这可能是一个自定义的XML格式化脚本,可以通过Sublime Text的命令面板调用来使用。 **源码与工具** 在编程过程中,源码和工具的选择与配置对于开发效率有着显著的影响。...
本地XML格式化工具是开发者处理XML文档时不可或缺的助手,它可以帮助我们将杂乱无章的XML源码整理成清晰易读的格式。在Java编程环境下,XML的格式化通常涉及到DOM(Document Object Model)、SAX(Simple API for ...
java文件格式化xml文件,帮助团队统一代码格式
JAVA对象生成格式化XML
总结来说,Java实现XML格式化的关键在于使用DOM4J库,通过SAXReader读取XML,OutputFormat定义输出格式,XMLWriter完成格式化写入。这种方法适用于小到中型的XML文档,对于大型XML文档,可能需要考虑使用更高效的...
XML(eXtensible Markup Language)则是一种结构化数据格式,广泛应用于数据交换、配置文件等场景。本篇文章将深入探讨如何在Java中利用HTTP协议发送XML报文,并通过实例和参数解析具体实现步骤。 首先,我们需要...
总的来说,XML格式化和Java_class反编译工具是Java开发中不可或缺的辅助工具,它们提升了开发者的生产力,使代码和数据更易于管理和理解。无论是对于初学者还是经验丰富的开发者,掌握这些工具的使用方法都是非常...
在“ftl排版-xml格式化.zip”这个压缩包中,我们有“foxe_241_zwm”这个文件,这很可能是一个名为Foxe的FTL编辑器或XML查看器的版本,版本号可能是241,而“zwm”可能是某种特定的配置或标识。 XML是一种标记语言,...
2. **Java中XML格式化的方法** - 使用DOM解析器:DOM解析器可以加载整个XML文档到内存,然后通过方法如`DocumentBuilderFactory`和`DocumentBuilder`来操作和格式化XML。 - 使用SAX解析器:SAX解析器是事件驱动的...
java生成xml文件的时候如何控制xml的缩进格式.pdf
该模板适用于java,自动格式化代码、xml、配置文件等。代码使用空格代替tab,缩进固定位4个空格。import防止优化,全部改为999,xml、前端代码,使用空格代替tab缩进默认为2个空格。java的doc注释,保留原有内容的...
同时,为了保证XML的格式化和验证,可以使用`XMLIndentator`进行美化,或者`javax.xml.validation`包下的工具进行XML校验。 总结起来,Java通过模板生成XML并发送报文涉及XML文档对象的创建、元素的构建、模板引擎...
《Java and XML(英文第三版)_java_xml_birdsolc_源码》是关于Java与XML集成编程的一本权威指南,特别适合于那些希望深入理解如何在Java应用程序中有效地使用XML技术的开发者。这本书详细阐述了Java平台上的XML处理...
另外,`java.util.Properties`类可以方便地读写XML格式的配置文件。 综上所述,XML在Java开发中扮演着重要角色,提供了多种解析和操作方式,开发者可以根据项目需求选择合适的工具和策略。DOM适合小规模且需频繁...
Java中可以使用JAXB(Java Architecture for XML Binding)库,它将XML与Java对象绑定,方便地将XML转换为Java对象,反之亦然。`@XmlRootElement`是JAXB的一个注解,用于标记类作为XML根元素。 1. JAXB解析XML: ...
1. **导入相关包**:在Java程序中使用XSLT进行转换前,需要导入必要的包,如`javax.xml.transform`、`javax.xml.transform.stream`和`javax.xml.transform.dom`等,这些包提供了执行XSLT转换所需的类和接口。...