Heim >Java >javaLernprogramm >Wie formatiere ich unstrukturierte XML-Strings in Java?

Wie formatiere ich unstrukturierte XML-Strings in Java?

Susan Sarandon
Susan SarandonOriginal
2024-12-14 13:43:11832Durchsuche

How to Format Unstructured XML Strings in Java?

Formatieren unstrukturierter XML-Strings in Java

Sie haben einen XML-String, der als Java-String ohne jegliche Formatierung codiert ist, und Sie müssen ihn konvertieren in einen String mit korrekter Einrückung und Zeilenumbrüchen umwandeln.

Um dies zu erreichen, können Sie die Java Transformer-Klasse zusammen mit den OutputKeys und verwenden DOMSource-Klassen.

Erstellen Sie zunächst eine neue Instanz der Transformer-Klasse:

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

Konfigurieren Sie den Transformer so, dass der Ausgabe Einrückungen hinzugefügt werden:

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

Jetzt Initialisieren Sie ein StreamResult-Objekt, um das transformierte Ergebnis als String zu erfassen:

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

Erstellen Sie ein DOMSource-Objekt aus Ihrem XML-String:

DOMSource source = new DOMSource(doc);

Verwenden Sie abschließend den Transformer, um das Quell-XML in die gewünschte formatierte Ausgabe umzuwandeln:

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

Nach dieser Transformation enthält die Variable xmlString das formatierte XML. Hier ist ein Beispiel:

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);

Ausgabe:

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

Das obige ist der detaillierte Inhalt vonWie formatiere ich unstrukturierte XML-Strings in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn