您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
在 Java 中,可以使用 javax.xml.transform
包中的 Transformer
和 TransformerFactory
类来实现 XML 的格式化输出。以下是一个简单的示例,展示了如何使用这些类来格式化 XML 字符串:
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.w3c.dom.Element;
import org.w3c.dom.NodeList;
import java.io.StringReader;
import java.io.StringWriter;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
public class XmlFormatter {
public static void main(String[] args) throws Exception {
String xmlString = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><root><element1>value1</element1><element2>value2</element2></root>";
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(new org.xml.sax.InputSource(new StringReader(xmlString)));
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");
DOMSource source = new DOMSource(document);
StringWriter writer = new StringWriter();
StreamResult result = new StreamResult(writer);
transformer.transform(source, result);
System.out.println(writer.toString());
}
}
在这个示例中,我们首先解析了一个简单的 XML 字符串,然后使用 Transformer
类设置了输出属性,如编码、缩进和缩进量。最后,我们将格式化后的 XML 输出到控制台。
运行这个示例,你将看到如下格式化后的 XML:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<element1>value1</element1>
<element2>value2</element2>
</root>
这样,你就可以得到一个美观且易读的 XML 输出。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。