import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
public class StringToXML{
public static void main(String[] args) {
String aa = "";//需要转为xml的字符串(必须是xml格式)
try {
Document document =DocumentHelper.parseText(aa);
System.out.println(document.asXML());
} catch (DocumentException e) {
e.printStackTrace();
嘎嘎一顿就是操作,学废了就动动自己的发财小手给博主点个赞吧
此处需用到org.dom4j的jar包jar包地址:https://mvnrepository.com/artifact/org.dom4j/dom4j/2.1.1import org.dom4j.Document;import org.dom4j.DocumentException;import org.dom4j.DocumentHelper; public class StringToXML{ public static void main(String[] args) {
在文章《JAVA 使用Dom4j 解析XML》中,介绍了使用Dom44j解析XML,比如节点的解析遍历、节点的增加、删除、写入文件等操作,本文我们继续使用dom4j实现xml字符串与xml文件之间的转换。
1、xml文档或节点转换为字符串
(1)代码
[java]
view plaincopyprint?
//xml文档或节点转换为字符串 @Test
//字符串转XML
String xmlStr = \"......\";
Document document = DocumentHelper.parseText(xmlStr);
// XML转字符串
Document document = ...;
String text = documen...
import com.sun.org.apache.xml.internal.serialize.OutputFormat;
import com.sun.org.apache.xml.internal.serialize.XMLSerializer;
import org.w3c.dom.Document;
import org.xml.sax.InputSource;
import org....
目录前言XML字符串一、用DOM4J解析xml字符串DOM4J生成xml格式的字符串二、使用JDK的org.w3c.dom.Document解析xml字符串org.w3c.dom.Document生成xml字符串org.w3c.dom的接口说明
我们在对接接口的时候,可能接口返回的是xml格式的字符串,那么这时候我们就需要对xml格式的字符串进行解析来获取结果,同时有时候我们请求接口的入参也需要是xml格式的字符串,这都需要我们对xml字符串进行处理,下面我们就来看看解析xml的常用方法。
XML字符
j2SE,J2ME,J2EE,Android,java范围技术交流,iso shsh文件备份和直接通过浏览器下载iphone游戏和或者软件包
ios在解锁或者备份shsh文件时,从手机里获取的plist文件是打不开的,我们可以通过java转成xml或者可以打的plist。shsh文件备份,
import java.io.*;
import com.dd.plist.PropertyListParser;
public class Plist {
public static void main(String[] args) throws Exception {
File file = new File("d:\\Info.plist"); //从手机里获取的shsh文件
File file1 = new File("d:\\Info.xml"); //转换存放的路径,linux上的路径如/data/shsh/
PropertyListParser.convertToXml(file, file1);
转成的对象 已JSON格式后台输出
{"body":{"class":"xmlToObject.vo.ReqBody","list":[{"class":"xmlToObject.vo.Foot","name":"红豆","rmb":"10元"},{"class":"xmlToObject.vo.Foot","name":"芋头","rmb":"100元"}]},"class":"xmlToObject.vo.Request","header":{"address":"地址","bbh":"版本号","class":"xmlToObject.vo.ReqHeader","name":"HEADERname","name_cn":"头名称","text":"标签text值\n\t\t\n\t\t\n\t\t\n\t","time":"时间"}}
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.StringReader;
import jav
(1)ToString 重写此方法 可以直接右键 get ToString
(2)equals 指示其他某个对象是否与此对象相等(基本类型:值是否相等,引用类型:地址值是否相等)
这个方法默认比的是地址值(意义不大),也需要重写一般用来比较对象的成员变量值是否相等
字符串的equals...
可以使用Java中的DOM(Document Object Model)库来实现将XML字符串转换为XML文档,并且可以更改节点内容。下面是一个示例代码:
```java
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import java.io.IOException;
import java.io.StringReader;
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;
public class XMLUtils {
public static void main(String[] args) {
String xmlString = "<root><node1>value1</node1><node2>value2</node2></root>";
String nodeName = "node1";
String nodeValue = "new value";
try {
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
InputSource inputSource = new InputSource(new StringReader(xmlString));
Document doc = builder.parse(inputSource);
// Find the node with the given name
NodeList nodeList = doc.getElementsByTagName(nodeName);
Node node = nodeList.item(0);
// Update the node value
node.setTextContent(nodeValue);
// Convert the updated document to a string
TransformerFactory tf = TransformerFactory.newInstance();
Transformer transformer = tf.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(System.out);
transformer.transform(source, result);
} catch (ParserConfigurationException | SAXException | IOException | TransformerException e) {
e.printStackTrace();
在上面的示例中,我们首先定义了一个XML字符串和要更改的节点名称及节点值。然后,我们使用DocumentBuilderFactory和DocumentBuilder对象将XML字符串转换为XML文档。接下来,我们使用getElementsByTagName方法查找要更改的节点,并使用setTextContent方法更改节点的值。最后,我们使用TransformerFactory和Transformer对象将更新后的XML文档转换回字符串,并将其打印到控制台上。