xom-1.1.jar包是一个操作xml文件的jar包,利用该jar包可以很方便的操作xml文件。但是,该.jar包中并没有现成的生成xml的<![CDATA[]]>段的函数。在经过查了许多网上资料后,该官方网站好像是说<![CDATA[]]>段不安全,经常被人误用,所以不提供生成<![CDATA[]]>段的函数。但与此同时,在官网上一个国外网友,利用xom包现有的函数,写了一个生成<![CDATA[]]>段的类,来对官网的解释表示抗议。特此记录如下,代码比较简单,就不解释了。
import java.io.IOException;
import java.io.StringReader;
import nu.xom.Builder;
import nu.xom.Document;
import nu.xom.ParsingException;
import nu.xom.Text;
/**
* 创建CDATA段的辅助类
*/
public class CDATAFactory
{
private static final Text PROTOTYPE; // this is really an instance of CDATASection
static
{
Text temp = null;
try
{
// XOM preserves existing CDATA's so start with a doc that has one
String docWithCDATA = "<text><![CDATA[prototype]]></text>";
Builder builder = new Builder();
Document document = builder.build(new StringReader(docWithCDATA));
// grab the resulting CDATASection and keep it around as a prototype
temp = (Text) document.getRootElement().getChild(0);
temp.detach();
}
catch (IOException e)
{
// not worried about IOExceptions just reading a string
}
catch (ParsingException e)
{
// already know this document is valid and will parse
}
PROTOTYPE = temp;
}
public static Text makeCDATASection(String value)
{
// use copy and setValue to get a brand new CDATA section
Text result = (Text) PROTOTYPE.copy();
result.setValue(value);
return result;
}
}
分享到:
相关推荐
用java中的 <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> ... <artifactId>xom</artifactId> <version>1.1</version> </dependency> 依赖来进行xml和json的转换
<artifactId>xom</artifactId> <version>1.1</version> </dependency> ``` 对于非Maven项目,你需要将"xom-1.1.jar"文件复制到项目的类路径下,通常是放到`lib`目录并配置IDE或构建工具使其能够识别。 在XML转...
<artifactId>xom</artifactId> <version>1.2.5</version> </dependency> ``` 如果使用Gradle,则在build.gradle文件中添加: ```groovy implementation 'nu.xom:xom:1.2.5' ``` 6. **异常处理**: XOM库中...
String xml = "<student><name>John</name><age>25</age></student>"; Student student = (Student) xstream.fromXML(xml); String jsonString = xstream.toXML(student); ``` 在这里,`Student`是一个包含`name`和...
<artifactId>json</artifactId> <version>20180813</version> </dependency> <!-- 如果需要json-xom或json-simple,请添加相应的依赖 --> </dependencies> ``` 对于`dom4j`,也需要添加相应的依赖,具体依赖信息...
XOM,全称为eXtensible Object Model,是一款在Java平台上用于XML处理的库。它由天文学家和软件开发者Tim Bray发起,并以其强大的类型安全、API简洁和高性能而受到开发者的欢迎。XOM的核心设计理念是提供一个既简单...
在Java编程中,处理XML数据时,XOM(eXtensible Object Model)库提供了一个高效、简洁且易于使用的API。XOM-1.1.jar是XOM库的一个版本,它专门针对XML解析和操作提供了强大的支持。本文将深入探讨XOM库的核心功能、...
javax.xml类库 xom1.2.6 jar包
标题中的“xom.jar json-lib struts2 包”提到了三个关键的IT概念:xom.jar、json-lib和Struts2。让我们逐一深入探讨这些技术及其在Java开发中的作用。 1. **XOM库(eXtensible Object Model)**: XOM是一个Java...
本教程通过一个简单的“使用XOM处理XML文档的demo源码”实例,旨在帮助开发者了解如何利用XOM库进行XML文档的操作,如查找、插入、删除和修改。 首先,让我们详细了解XOM库的特点。XOM库设计的核心理念是消除DOM...
xom jar包 xml用的,自己用的,thank csdn!
String xmlString = "<root><element1>Value1</element1><element2>Value2</element2></root>"; // 使用XOM解析XML Element root = new nu.xom.Builder().build(new StringReader(xmlString)).getRootElement();...
这里仅仅是定义了Converter并且简单的放在<convert….>元素之内,任何的<convert….>元素内容都有两个必须定义的属性.一个是对converter定义的引用和converter能够转换的类. 例如最简单的converter是null converter,...
xml转json时的依赖包, Size: 421.45 KB Detail: META-INF/ META-INF/MANIFEST.MF 1.15 KB nu/ nu/xom/ nu/xom/ASCIIWriter.class 499.0 bytes nu/xom/Attribute$Type.class 2.04 KB nu/xom/...
xom,在将json字符串转换为xml的时候,会用到xom包的
json-lib库依赖于多个依赖包,包括commons-beanutils、commons-collections、commons-lang、commons-logging、ezmorph和xom等。如果缺少这些依赖包,将会出现运行错误。 本文主要讲述了Java中将xml、list、map和...
2. 文档元素(Element)是XML的核心,由标签(Tag)组成,如`<element>`和`</element>`。元素可以包含其他元素、文本或属性。 3. 属性(Attribute)用于给元素添加额外信息,如`<element attr="value">`。 4. 命名...
压缩包内的文件名为"xom-1.3.4.jar",这通常是一个Java Archive文件,包含了XOM库的源代码或者编译后的类文件,使得开发者可以在Java环境中使用XOM库来解析和操作XML文档。.jar文件是Java平台的标准归档格式,它可以...
6. CDATA:XML中,如果内容包含特殊字符(如 `<` 或 `>`),可以使用CDATA段(`<![CDATA[...]]>`)包裹,使得这些字符不被解析。 7. 注释(Comments):XML支持使用`<!-- ... -->` 来添加注释,这对文档的解释和...
- **Text对象**:文本内容由`nu.xom.Text`对象表示,包括字符数据(CDATA)和普通文本。 - **Attribute对象**:XML属性对应于`nu.xom.Attribute`,每个属性都有一个名字和值。 2. **XOM的核心特性**: - **类型...