Rumah >Java >javaTutorial >Bagaimana untuk Memformat Rentetan XML Tidak Berstruktur dalam Java?

Bagaimana untuk Memformat Rentetan XML Tidak Berstruktur dalam Java?

Susan Sarandon
Susan Sarandonasal
2024-12-14 13:43:11832semak imbas

How to Format Unstructured XML Strings in Java?

Memformat Rentetan XML Tidak Berstruktur dalam Java

Anda mempunyai rentetan XML yang dikodkan sebagai Rentetan Java tanpa sebarang pemformatan dan anda perlu menukarnya ke dalam String dengan lekukan dan suapan baris yang betul.

Untuk mencapai ini, anda boleh menggunakan Java Kelas Transformer bersama-sama dengan kelas OutputKeys dan DOMSource.

Mula-mula, buat contoh baharu kelas Transformer:

Transformer transformer = TransformerFactory.newInstance().newTransformer();

Konfigurasikan Transformer untuk menambah lekukan pada output:

transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");

Sekarang, mulakan objek StreamResult untuk menangkap hasil yang diubah sebagai Rentetan:

StreamResult result = new StreamResult(new StringWriter());

Buat objek DOMSource daripada rentetan XML anda:

DOMSource source = new DOMSource(doc);

Akhir sekali, gunakan Transformer untuk menukar XML sumber kepada output terformat yang diingini:

transformer.transform(source, result);
String xmlString = result.getWriter().toString();

Selepas transformasi ini, pembolehubah xmlString akan mengandungi XML yang diformatkan. Berikut ialah contoh:

transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");
StreamResult result = new StreamResult(new StringWriter());
DOMSource source = new DOMSource(doc);
transformer.transform(source, result);
String xmlString = result.getWriter().toString();
System.out.println(xmlString);

Output:

<?xml version="1.0" encoding="UTF-8"?>
<root>
 <tag>
   <nested>hello</nested>
 </tag>
</root>

Atas ialah kandungan terperinci Bagaimana untuk Memformat Rentetan XML Tidak Berstruktur dalam Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn