导航:首页 > 编程语言 > javastringxml解析

javastringxml解析

发布时间:2025-01-06 04:12:13

A. java中如何用JAXBContext解析XML字符串 注意是字符串

在Java中,使用JAXBContext解析XML字符串是一个常见的操作。首先,定义一个对应的Java类,比如Student类,它应包含与XML元素相对应的属性。这里提供了一个示例:

String xml="<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><student><classRoom><className>计算机</className><id>1</id></classRoom><id>1</id><username>zhangsan</username></student>";

接下来,通过JAXBContext.newInstance(Student.class)实例化JAXBContext对象。然后,利用该对象创建Unmarshaller实例。

Unmarshaller um=ctx.createUnmarshaller();

接着,通过Unmarshaller对象的unmarshal方法解析XML字符串。使用StringReader作为参数,将XML字符串包装成一个Reader对象。

Student stu=(Student)um.unmarshal(new StringReader(xml));

最后,通过stu对象获取相关信息。例如,获取stu的classRoom对象,并进一步获取classRoom的className属性。

System.out.println(stu.getClassRoom().getClassName());

通过这些步骤,可以成功将XML字符串解析成对应的Java对象,并进一步获取所需信息。

B. JAVA中如何用DOM4J将一个字符串解析成XML格式

用:
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
Document doc = factory.newDocumentBuilder().parse(new ByteArrayInputStream(xmlStr.getBytes()));
试试。

C. 如何用java封装解析一个多层次的XML文件,急求大神帮助

下面提供了XML解析成实体类,以及实体类转换成xml的方法。
public class SwitchXML {

private XStream xStream = new XStream();

private String xmlPath = "D:/data.xml";

// 1. obj -> xml(object类型转换为xml类型)
public String printXML(User user) {
System.out.println("obj -> xml");
String xml = xStream.toXML(user);
System.out.println(xml);
return xml;
}

// 2. xml->obj(xml类型转换为object类型,并打印)
public void printObj(String xml) {
System.out.println("xml -> obj");
User u = (User) xStream.fromXML(xml);
System.out.println(u.getUserName() + " " + u.getPassWord() + " " + u.getRegisteredTime());
}

// 3. 将object类型转换为xml类型,并写入XML文件(其他格式也可以,比如txt文件)
public void writerXML(User user) {
try {
FileOutputStream fs = new FileOutputStream(xmlPath);
xStream.toXML(user, fs);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}

// 4. 读取XML文件,加载进相应Object类型
public void readerXML() {
User user = new User();
FileInputStream fis = null;
try {
fis = new FileInputStream(xmlPath);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
xStream.fromXML(fis, user);
// 打印对象信息
System.out.println(user.toString());
// 打印对象的属性值
System.out.println(user.getUserName() + "-" + user.getPassWord() + "-"
+ user.getRegisteredTime());
}

public static void main(String[] args) {
// 用户名
String username = "admin";
// 密码
String password = "admin";
// 注册时间
Date now = new Date();
SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
String registeredtime = format.format(now);

User user = new User(username, password, registeredtime);
SwitchXML switchXML = new SwitchXML();

// 1. object类型转换为xml类型,在控制台打印
String xml = switchXML.printXML(user);
System.out.println("---------------------");
// 2. xml类型转换为object类型,在控制台打印
switchXML.printObj(xml);
System.out.println("---------------------");
// 3. 将object类型转换为xml类型,并写入XML文件
switchXML.writerXML(user);
System.out.println("---------------------");
// 4. 读取XML文件,加载进相应Object类型
switchXML.readerXML();

}

阅读全文

与javastringxml解析相关的资料

热点内容
红进蓝出指标源码 浏览:700
python数据转换列表类型 浏览:717
解压后的文件怎么解开 浏览:175
四川补贴认证下载什么app 浏览:858
android设计风格 浏览:426
视频不支持我的加密 浏览:342
布包pdf 浏览:267
程序员录制课程表 浏览:626
eclipsephp断点调试 浏览:895
虚拟成交量指标源码 浏览:838
什么APP有背单词小组 浏览:43
苹果2g视频怎么加密 浏览:204
人工智能程序员和古典录音师相遇 浏览:415
国产服务器是怎么来的 浏览:116
蓄势待发源码 浏览:458
服务器如何清理log文件 浏览:835
javaawtfont 浏览:627
php企业站后台 浏览:417
日企程序员招聘 浏览:113
服务器中毒网页投放广告怎么办 浏览:709