在没有xml文件标记的情况下在Java中打印XML

前端之家收集整理的这篇文章主要介绍了在没有xml文件标记的情况下在Java中打印XML前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有没有办法在 Java中没有XML标头标签的情况下打印XML内容

例如,如果我有这样的XML:

<?xml version='1.0' encoding='UTF-8'?>
<rootElement>
<childElement>Text</childElement>
</rootElement>

我只想打印

<rootElement>
<childElement>Text</childElement>
</rootElement>

这与我到目前为止所做的非常相似:
http://sacrosanctblood.blogspot.com/2008/07/convert-xml-file-to-xml-string-in-java.html

我不能给出确切的源代码,但上面的链接示例应该给你一些想法.这是带导入的代码

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import org.w3c.dom.Attr;
import org.w3c.dom.Document;
import org.w3c.dom.Text;

public String convertXMLFileToString(String fileName) 
        { 
          try{ 
            DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance(); 
            InputStream inputStream = new FileInputStream(new File(fileName)); 
            org.w3c.dom.Document doc = documentBuilderFactory.newDocumentBuilder().parse(inputStream); 
            StringWriter stw = new StringWriter(); 
            Transformer serializer = TransformerFactory.newInstance().newTransformer(); 
            serializer.transform(new DOMSource(doc),new StreamResult(stw)); 
            return stw.toString(); 
          } 
          catch (Exception e) { 
            e.printStackTrace(); 
          } 
            return null; 
        }

解决方法

Transformer serializer = TransformerFactory.newInstance().newTransformer();
serializer.setOutputProperty("omit-xml-declaration","yes");
serializer.transform(new DOMSource(doc),new StreamResult(stw));

老旧的XSL;).

猜你在找的XML相关文章