0
Transformer tf = TransformerFactory.newInstance().newTransformer();
tf.setOutputProperty(OutputKeys.INDENT, "yes");
tf.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4");
tf.transform(new StreamSource(reader), new StreamResult(writer));
der obige Code gibt mir das folgende Ergebnis:Wie drucke ich XML-Attribute in Java?
<Response>
<Head>ERROR</Head>
<Body>
<ERROR code="1000" reason="ServerSOAPFaultException" description="Fault occurred while processing."/>
</Body>
</Response>
es nicht indent xml-Attribute, aber ich brauche XML-Attribute als auch zu zerklüftet:
<Response>
<Head>ERROR</Head>
<Body>
<ERROR code="1000"
reason="ServerSOAPFaultException"
description="Fault occurred while processing."/>
</Body>
</Response>
Wie TU es?
Können Sie einen Beispielcode angeben? –
Saxon unterstützt die JAXP-Schnittstelle, so dass Sie im Wesentlichen den Code verwenden können, den Sie bereits haben - setzen Sie einfach Saxon auf den Klassenpfad. –
Ich habe [Saxon-HE-Abhängigkeit] (https://mvnrepository.com/artifect/net.sf.saxon/Saxon-HE/9.7.0-15) zu meinem Projekt hinzugefügt und es hat begonnen, Attribute einzurücken, aber es funktioniert nur für die Elemente, die viele Attribute enthalten, und nicht für Elemente, die nur 3-4 Attribute enthalten. Können Sie erklären, wie Sie einen kleinen Wert für die Eigenschaft saxon: line-length festlegen? –