返回顶部
首页 > 资讯 > 精选 >dom4j的XMLWrtier输出问题实例分析
  • 842
分享到

dom4j的XMLWrtier输出问题实例分析

2023-06-17 13:06:40 842人浏览 泡泡鱼
摘要

这篇文章主要介绍“dom4j的XMLWrtier输出问题实例分析”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“dom4j的XMLWrtier输出问题实例分析”文章能帮助大家解决问题。首先先说一下现象

这篇文章主要介绍“dom4j的XMLWrtier输出问题实例分析”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“dom4j的XMLWrtier输出问题实例分析”文章能帮助大家解决问题。

首先先说一下现象吧,如果XML里面包含了一些特殊字符,比如 这个是line feed,也就是换行符。在经过它输出后总是会变成\n, 不好干预它的转化。下面来看具体的例子。

这个是原始的xml文件:

Xml代码

<?xml version="1.0" encoding="UTF-8"?>    <Package id = "test" name = "TestTest">             Package>

下面是测试代码:

Java代码

package org.powermock.examples.dom4j;         import java.io.BufferedReader;     import java.io.File;     import java.io.FileInputStream;     import java.io.FileOutputStream;     import java.io.InputStreamReader;         import javax.xml.transfORM.Transformer;     import javax.xml.transform.TransformerFactory;     import javax.xml.transform.stream.StreamResult;         import junit.framework.Assert;         import org.dom4j.Document;     import org.dom4j.DocumentHelper;     import org.dom4j.Element;     import org.dom4j.io.DocumentSource;     import org.dom4j.io.XMLWriter;     import org.junit.Test;         public class TestXMLOutput {                  public final static String FILE_NAME = "text.xml";                  @Test        public  void testDom4j() {                 Document document = createDocument();             try {                 Element rootElement = document.getRootElement();                 String packageName = rootElement.attributeValue("name");                                  Assert.assertEquals("Test\nTest", packageName);                                  FileOutputStream fos = new FileOutputStream("dom4j_"+FILE_NAME);                 XMLWriter writer = new XMLWriter(fos);                 writer.setEscapeText(false);                 writer.write(document);                                  fos.close();                 writer.close();             } catch (Exception e) {                 e.printStackTrace();             }         }                  @Test        public void testDom(){             Document document = createDocument();             try {                 FileOutputStream fos = new FileOutputStream("dom_"+FILE_NAME);                  // Use a Transformer for output                  TransformerFactory tFactory =                     TransformerFactory.newInstance();                  Transformer transformer = tFactory.newTransformer();                  transformer.setOutputProperty("indent","yes");                  transformer.setOutputProperty("{Http://xml.apache.org/xslt}indent-amount","4");                  transformer.setOutputProperty("encoding","UTF-8");                                    DocumentSource source = new DocumentSource(document);                  StreamResult result = new StreamResult(fos);                  transformer.transform(source,result);                                    fos.close();             } catch (Exception e) {                 e.printStackTrace();             }         }                  private Document createDocument(){             Document document = null;             try {                 File file = new File(FILE_NAME);                 BufferedReader reader = new BufferedReader(                         new InputStreamReader(new FileInputStream(file)));                                  StringBuffer buffer = new StringBuffer();                 String line = "";                 while((line = reader.readLine()) != null){                     buffer.append(line);                 }                 reader.close();                                  document = DocumentHelper.parseText(buffer.toString());             } catch (Exception e) {                 e.printStackTrace();             }             return document;         }     }

下面是dom4j的转换后的输出:

Xml代码

<?xml version="1.0" encoding="UTF-8"?>    <Package id="test" name="Test     Test">   Package>

下面是transfomer的输出:

Xml代码

<?xml version="1.0" encoding="UTF-8"?>    <Package id="test" name="TestTest">  Package>

大家看到效果了把,dom4j变成了 \n, 但是transfomer还是原来的格式。

关于“dom4j的XMLWrtier输出问题实例分析”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网精选频道,小编每天都会为大家更新不同的知识点。

--结束END--

本文标题: dom4j的XMLWrtier输出问题实例分析

本文链接: https://lsjlt.com/news/289365.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • dom4j的XMLWrtier输出问题实例分析
    这篇文章主要介绍“dom4j的XMLWrtier输出问题实例分析”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“dom4j的XMLWrtier输出问题实例分析”文章能帮助大家解决问题。首先先说一下现象...
    99+
    2023-06-17
  • Java算法题输入问题实例分析
    本篇内容介绍了“Java算法题输入问题实例分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1.给定范围,确定输入几个数据直接使用普通的Sc...
    99+
    2023-06-29
  • Shell输出重定向实例分析
    这篇文章主要介绍了Shell输出重定向实例分析的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Shell输出重定向实例分析文章都会有所收获,下面我们一起来看看吧。Linux 命令默认从标准输入设备(stdin)获...
    99+
    2023-06-27
  • SpringCloud问题实例分析
    这篇“SpringCloud问题实例分析”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“SpringCloud问题实例分析”文...
    99+
    2023-06-29
  • C++输入和输出流的示例分析
    这篇文章给大家分享的是有关C++输入和输出流的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。输入和输出流从键盘输入数据,输出到显示器屏幕。这种输入输出称为标准的输入输出,简称标准I/O。从磁盘文件输入数据...
    99+
    2023-06-29
  • Oracle连接问题实例分析
    今天小编给大家分享一下Oracle连接问题实例分析的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一...
    99+
    2024-04-02
  • CSS继承问题实例分析
    本篇内容介绍了“CSS继承问题实例分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 根据 CSS目前的...
    99+
    2024-04-02
  • expdpnf导出问题分析
    这篇文章主要讲解了“expdpnf导出问题分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“expdpnf导出问题分析”吧!中止僵死的expdp任务--db...
    99+
    2024-04-02
  • CRM Opportunity的删除问题实例分析
    这篇文章主要介绍“CRM Opportunity的删除问题实例分析”,在日常操作中,相信很多人在CRM Opportunity的删除问题实例分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CRM Oppor...
    99+
    2023-06-04
  • Java中输入/输出流体系的示例分析
    这篇文章主要介绍Java中输入/输出流体系的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Java输入/输出流体系1.字节流和字符流字节流:按字节读取。字符流:按字符读取。字符流读取方便,字节流功能强大,当不...
    99+
    2023-05-30
    java
  • CI脚本异常退出问题的示例分析
    这篇文章主要介绍CI脚本异常退出问题的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!背景在CI脚本中,使用类似如下脚本进行项目编译的计时,但在执行过程中,有时会出现CI脚本(命名为ci.sh)未完全执行的情况...
    99+
    2023-06-09
  • mysqldump问题的示例分析
    mysqldump问题的示例分析,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。导出:mysqldump数据库[表]>/t...
    99+
    2024-04-02
  • Java IO中字节输入输出流的示例分析
    这篇文章主要介绍Java IO中字节输入输出流的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!讲的是字节输入输出流:InputStream、OutputSteam(下图红色长方形框内),红色椭圆框内...
    99+
    2023-06-26
  • Scss编译输出风格的示例分析
    这篇文章主要介绍Scss编译输出风格的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!很多人从使用Scss的那一刻起,就被别人告诉了如何编译。所以,基本上也就只会一种命令编译方...
    99+
    2024-04-02
  • Python的print输出重定向举例分析
    本篇内容介绍了“Python的print输出重定向举例分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Python中调试程序使用最多的是p...
    99+
    2023-06-02
  • SQL权限设置的问题实例分析
    这篇文章主要讲解了“SQL权限设置的问题实例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“SQL权限设置的问题实例分析”吧! 第一个是对于一个用户的操...
    99+
    2024-04-02
  • nodejs实例解析(输出hello world)
    下面将带领大家一步步学习nodejs,知道怎么使用nodejs搭建服务器,响应get/post请求,连接数据库等。 搭建服务器页面输出hello world var http = require('ht...
    99+
    2022-06-04
    实例 nodejs world
  • Ruby迭代器及文件的输入与输出实例代码分析
    这篇文章主要介绍“Ruby迭代器及文件的输入与输出实例代码分析”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Ruby迭代器及文件的输入与输出实例代码分析”文章能帮助大家解决问题。Ruby 迭代器简单...
    99+
    2023-07-06
  • Hibernate3.1问题举例分析
    本篇内容主要讲解“Hibernate3.1问题举例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Hibernate3.1问题举例分析”吧!今天在运行一个很简单的save()方法报:Excep...
    99+
    2023-06-17
  • 源码分析SpringMvc日志打印被忽略输出问题
    目录1.写在前面2.问题引出3.截取源码分析4.截取问题处理1.写在前面 在java的开发过程中,涉及到java web的开发,基本上都是走spring这一套了。 我们之前一般来说,...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作