加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-16 23:25:49 所属栏目:百科 来源:网络整理
导读:有没有办法在 Java中没有XML标头标签的情况下打印XML内容? 例如,如果我有这样的XML: ?xml version='1.0' encoding='UTF-8'?rootElementchildElementText/childElement/rootElement 我只想打印 rootElementchildElementText/childElement/rootElement 这与
有没有办法在 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;).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读