string字符串转xml

Sometimes while programming in java, we get String which is actually an XML and to process it, we need to convert it to XML Document (org.w3c.dom.Document). Also for debugging purpose or to send to some other function, we might need to convert Document object to String.

有时在用Java编程时,我们得到的String实际上是XML,并且要对其进行处理,我们需要将其转换为XML Document( org.w3c.dom.Document )。 同样出于调试目的或发送给其他功能,我们可能需要将Document对象转换为String。

Here I am providing two utility functions.

在这里,我提供了两个实用程序功能。

  1. Document convertStringToDocument(String xmlStr): This method will take input as String and then convert it to DOM Document and return it. We will use InputSource and StringReader for this conversion.Document convertStringToDocument(String xmlStr) :此方法将输入作为String,然后将其转换为DOM Document并返回。 我们将使用InputSource和StringReader进行此转换。
  2. String convertDocumentToString(Document doc): This method will take input as Document and convert it to String. We will use Transformer, StringWriter and StreamResult for this purpose.String convertDocumentToString(Document doc) :此方法将输入作为Document并将其转换为String。 为此,我们将使用TransformerStringWriterStreamResult
package com.journaldev.xml;import java.io.StringReader;
import java.io.StringWriter;import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;import org.w3c.dom.Document;
import org.xml.sax.InputSource;public class StringToDocumentToString {public static void main(String[] args) {final String xmlStr = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n"+"<Emp id=\"1\"><name>Pankaj</name><age>25</age>\n"+"<role>Developer</role><gen>Male</gen></Emp>";Document doc = convertStringToDocument(xmlStr);String str = convertDocumentToString(doc);System.out.println(str);}private static String convertDocumentToString(Document doc) {TransformerFactory tf = TransformerFactory.newInstance();Transformer transformer;try {transformer = tf.newTransformer();// below code to remove XML declaration// transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");StringWriter writer = new StringWriter();transformer.transform(new DOMSource(doc), new StreamResult(writer));String output = writer.getBuffer().toString();return output;} catch (TransformerException e) {e.printStackTrace();}return null;}private static Document convertStringToDocument(String xmlStr) {DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();  DocumentBuilder builder;  try  {  builder = factory.newDocumentBuilder();  Document doc = builder.parse( new InputSource( new StringReader( xmlStr ) ) ); return doc;} catch (Exception e) {  e.printStackTrace();  } return null;}}

When we run above program, we get the same String output that we used to create DOM Document.

当我们在上面的程序上运行时,我们得到与用于创建DOM Document相同的String输出。

<?xml version="1.0" encoding="UTF-8"?><Emp id="1"><name>Pankaj</name><age>25</age>
<role>Developer</role><gen>Male</gen></Emp>

You can use replaceAll("\n|\r", "") to remove new line characters from String and get it in compact format.

您可以使用replaceAll("\n|\r", "")从String中删除新行字符并以紧凑格式获取它。

翻译自: https://www.journaldev.com/1237/java-convert-string-to-xml-document-and-xml-document-to-string

string字符串转xml

string字符串转xml_Java将字符串转换为XML文档和将XML文档转换为String相关推荐

  1. android将字符串中间几个字用*代替,【Android技巧之相见恨晚系列】-TextView/string.xml冷门小技巧:占位转换符%1$s、%1$d等的用法...

    技巧比较冷门,我今天用到才了解到,以前都没接触过...然而却发现这是很早就已经有的技巧... 引子: 如果一段文字需要多段TextView拼接而成,比如:"我叫XXX,今年XX岁了,身高X. ...

  2. android bitmap string,Android Bitmap到Base64字符串(Android Bitmap to Base64 String)

    Android Bitmap到Base64字符串(Android Bitmap to Base64 String) 如何将一个大的Bitmap(用手机相机拍摄的照片)转换为Base64 String? ...

  3. Java中String类、字符串常量池、字符串常用方法

    String类: String代表字符串类,java中所有双引号中的内容都称为字符串,如:"hello".字符串是不可改变的,因此字符串是可以共享使用的,相当于char字符数组,但 ...

  4. JAVA day13,14 API、Object类、日期时间类(long,Date,Calendar,DateFormat)、String类(字符串,可变长字符串)、正则表达式、包装类

    1.API API(Application Programming Interface),应⽤程序编程接⼝.Java API是⼀本程序员的"字 典",是JDK提供给我们使⽤的类的说 ...

  5. java 字符串总结_Java中字符串(String)总结

    先说说JDK API: JDK中包含大量的API类库,所谓API(Application Programming Interface,应用程序编程接口,这些功能以类的形式封装). JDK API包含的 ...

  6. Java对于字符串的处理【String和int之间的转换、字符串拼接、字符串获取长度、字符串大小写转换、字符串去空格、字符串分割、字符串替换、字符串提取、字符串比较、字符串查找】

    文章目录 String字符串 和 整型int 的相互转换 String转化为int int 转换为 String 字符串拼接 使用连接运算符 "+" 使用 concat() 方法 ...

  7. 编写STM32 C程序:字符串String转数字, 数字转字符串String

    一 数字类型与字符串类型 在做嵌入式C程序开发中,如果通信协议采用字符串方式来交互数据,比如使用到AT指令格式,或者需要GUI界面的显示,那么就会经常用到数字类型与字符串类型的转换.在C语言标准库st ...

  8. 【String拼接】Go语言字符串如何高效的进行拼接(6种方式进行对比分析)

    string类型 我们首先来了解一下Go语言中string类型的结构定义,先来看一下官方定义: // string is the set of all strings of 8-bit bytes, ...

  9. C++ 笔记(09)— 字符串(C 风格字符串、C++字符串 string)

    C++ 提供了以下两种类型的字符串表示形式: C 风格字符串: C++ 引入的 string 类类型: 1. C 风格字符串 C 风格的字符串起源于 C 语言,并在 C++ 中继续得到支持.字符串实际 ...

最新文章

  1. sql里查询一个组和组的用户数怎么查?_【牛客网SQL刷题】留存率怎么算?
  2. px4 uavcan linux,PX4开发指南-12.2.1.UAVCAN Bootloader
  3. Python IDLE 如何清屏
  4. SAP Spartacus B2B 页面的 Popup Component
  5. 【教程】一步一步教你如何自定义设置——博客园canvas/JS交互动画背景
  6. 三星Galaxy Note 10 Pro渲染图曝光:挖孔屏+前摄居中
  7. 基于Spring Boot 的统一错误处理
  8. oracle中的new old 关键字
  9. Angular之constructor和ngOnInit差异及适用场景
  10. [译]ASP.NET 5 Configuration
  11. 简述使jdbc连接mysql数据库_java中简述使用JDBC完成数据库操作的基本步骤。
  12. 【交通流预测】基于matlab小波神经网络短时交通流预测【含Matlab源码 400期】
  13. simotion基本功能手册_深入浅出西门子运动控制器——SIMOTION实用手册(1CD)
  14. 极域电子教室忘记密码或无法卸载怎么办
  15. 遗传算法实例(matlab编程实现)
  16. 使用Windows命令行reg控制注册表键值
  17. TI单芯片毫米波雷达1642代码走读(〇)——总纲
  18. Brupsuit爆破
  19. KeyPress 和KeyDown 、KeyPress的区别
  20. 寻找市场中的Alpha(上):WorldQuant的阿尔法设计理念

热门文章

  1. [转载] pip快速下载python包
  2. [转载] 简单工厂模式和工厂方法模式在Python中的实现
  3. [转载] [转载] python 去除字符串的标点符号 用_Python成为专业人士笔记–String字符串方法
  4. JDBC秒变C3P0连接池——再加连接解耦
  5. 使用pygal.maps.world库读取JSON格式文件,显示世界人口地图图示
  6. (25)软件工程开发规范
  7. item 12: 把重写函数声明为“override”的
  8. jquery 时间相减获取天数_JQuery Datepicker实现JavaScript日期相减的小例子
  9. mysql命令成功数值不变_MySQL基础知识精华汇总_3(mysql基础命令操作)
  10. socket java 客户端_Java基于socket实现的客户端和服务端通信功能完整实例