ホームページ >Java >&#&チュートリアル >Java で XML 文字列を美しくするにはどうすればよいですか?
Java での XML の美化
質問:
読みやすさと書式設定を強化するにはどうすればよいですか文字列として保存された XML のJava?
はじめに:
XML (Extensible Markup Language) には適切なインデントや改行が欠けていることが多く、読みにくく解釈しにくくなっています。 XML をフォーマットすると、読みやすさが向上し、移動や理解が容易になります。
コード ソリューション:
Java API を利用して、XML 文字列をフォーマットして、よりわかりやすくすることができます。読み取り可能:
import javax.xml.transform.Transformer; import javax.xml.transform.TransformerException; import javax.xml.transform.TransformerFactory; import javax.xml.transform.stream.StreamResult; import javax.xml.transform.stream.StreamSource; public class XmlBeautifier { public static String formatXml(String unformattedXml) { try { // Create a transformer to modify the XML Transformer transformer = TransformerFactory.newInstance().newTransformer(); // Set indenting and indentation amount transformer.setOutputProperty(OutputKeys.INDENT, "yes"); transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2"); // Convert the XML string to a DOM source DOMSource source = new DOMSource(new DocumentBuilder().parse(new InputSource(new StringReader(unformattedXml)))); // Format the XML and store the result in a string StreamResult result = new StreamResult(new StringWriter()); transformer.transform(source, result); return result.getWriter().toString(); } catch (TransformerException | ParserConfigurationException | SAXException e) { // Handle any exceptions throw new RuntimeException(e); } } }
使用法例:
String unformattedXml = "<tag><nested>hello</nested></tag>"; String formattedXml = XmlBeautifier.formatXml(unformattedXml);
出力例:
<?xml version="1.0" encoding="UTF-8"?> <root> <tag> <nested>hello</nested> </tag> </root>
注:
以上がJava で XML 文字列を美しくするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。