• JAVA XML格式化输出


    import org.apache.xml.serialize.OutputFormat;
    import org.apache.xml.serialize.OutputFormat;
    import org.apache.xml.serialize.XMLSerializer;
    import org.w3c.dom.Document;
    import org.xml.sax.InputSource;
    import org.xml.sax.SAXException;
    
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import javax.xml.parsers.ParserConfigurationException;
    import java.io.IOException;
    import java.io.StringReader;
    import java.io.StringWriter;
    import java.io.Writer;
    
    /**
     * Created by IntelliJ IDEA.
     * User: tsaowe
     * Date: 11-9-1
     * Time: 上午9:13
     */
    public class XmlFormatter {
        public String format(String unformattedXml) {
            try {
                final Document document = parseXmlFile(unformattedXml);
                OutputFormat format = new OutputFormat(document);
                format.setLineWidth(65);
                format.setIndenting(true);
                format.setIndent(2);
                Writer out = new StringWriter();
                XMLSerializer serializer = new XMLSerializer(out, format);
                serializer.serialize(document);
                return out.toString();
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }
    
        private Document parseXmlFile(String in) {
            try {
                DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
                DocumentBuilder db = dbf.newDocumentBuilder();
                InputSource is = new InputSource(new StringReader(in));
                return db.parse(is);
            } catch (ParserConfigurationException e) {
                throw new RuntimeException(e);
            } catch (SAXException e) {
                throw new RuntimeException(e);
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }
    
        public static void main(String[] args) throws Exception{
            String s = "<?xml version="1.0" encoding="UTF-8"?><PARAM><DBID>35</DBID><SEQUENCE>atgtca</SEQUENCE><MAXNS>10</MAXNS><MINIDENTITIES>90</MINIDENTITIES><MAXEVALUE>10</MAXEVALUE><USERNAME>admin</USERNAME><PASSWORD>111111</PASSWORD><TYPE>P</TYPE><RETURN_TYPE>2</RETURN_TYPE></PARAM>";//未格式化前的xml
            System.out.println(new XmlFormatter().format(s));
            
        }
    }
  • 相关阅读:
    富文本 文字图片点击,(TextView)
    swift和oc之间的相互调用(block,代理)
    SVN .a文件丢失问题
    URL Schemes 不能识别和不能跳转的原因
    tableViewcell上放定时器
    app之间的跳转和传参问题
    dicom通讯的工作方式及dicom标准简介
    Dicom格式文件解析器
    消息队列
    c#高级编程第七版 学习笔记 第一章 .NET体系结构
  • 原文地址:https://www.cnblogs.com/chenghu/p/5624420.html
Copyright © 2020-2023  润新知