Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java org.w3c.dom.ls.LSSerialize-设置文本换行、缩进大小_Java_Xml_Xml Parsing_Xml Serialization_Xerces - Fatal编程技术网

Java org.w3c.dom.ls.LSSerialize-设置文本换行、缩进大小

Java org.w3c.dom.ls.LSSerialize-设置文本换行、缩进大小,java,xml,xml-parsing,xml-serialization,xerces,Java,Xml,Xml Parsing,Xml Serialization,Xerces,我使用以下代码缩进作为字符串提供给我的xml文档 如果有必要的话,我正在使用JDK实现的org.w3c.dom.ls 公共字符串格式(字符串xml){ 试一试{ final InputSource src=新的InputSource(新的StringReader(xml)); 最终节点document=DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(src).getDocumentElement(); final

我使用以下代码缩进作为字符串提供给我的xml文档

如果有必要的话,我正在使用JDK实现的
org.w3c.dom.ls

公共字符串格式(字符串xml){
试一试{
final InputSource src=新的InputSource(新的StringReader(xml));
最终节点document=DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(src).getDocumentElement();
final Boolean keepDeclaration=Boolean.valueOf(xml.startsWith(“
public String format(String xml) {

    try {
        final InputSource src = new InputSource(new StringReader(xml));
        final Node document = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(src).getDocumentElement();
        final Boolean keepDeclaration = Boolean.valueOf(xml.startsWith("<?xml"));

    //May need this: System.setProperty(DOMImplementationRegistry.PROPERTY,"com.sun.org.apache.xerces.internal.dom.DOMImplementationSourceImpl");

        final DOMImplementationRegistry registry = DOMImplementationRegistry.newInstance();
        final DOMImplementationLS impl = (DOMImplementationLS) registry.getDOMImplementation("LS");
        final LSSerializer writer = impl.createLSSerializer();

        writer.getDomConfig().setParameter("format-pretty-print", Boolean.TRUE); // Set this to true if the output needs to be beautified.
        writer.getDomConfig().setParameter("xml-declaration", keepDeclaration); // Set this to true if the declaration is needed to be outputted.

        return writer.writeToString(document);
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
}