- 浏览: 151772 次
- 性别:
- 来自: 武汉
最新评论
-
damoqiongqiu:
为神马文档没有离线下载的,求离线的文档,求楼主赐文档:2534 ...
AsWing 入门 -
afeng119:
谢谢,试试好用不!
struts的html:file标签上传文件,中文的文件名会导致乱码问题 -
wenjinglian:
那去用用
JAVA MYSQL做分页 -
zltian:
AsWing 入门 -
毛冬:
呵呵。就是說LIST是對象引用,而不是值引用
JAVA LIST MAP 是引用地址而不是复制
package com.hcwy.dao; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.util.List; import org.jdom.Document; import org.jdom.Element; import org.jdom.JDOMException; import org.jdom.input.SAXBuilder; import org.jdom.output.XMLOutputter; public class Operate { public void BuildXMLDoc() throws IOException, JDOMException { // 创建根节点 list; Element root = new Element("list"); // 根节点添加到文档中; Document Doc = new Document(root); // 此处 for 循环可替换成 遍历 数据库表的结果集操作; for (int i = 0; i < 5; i++) { // 创建节点 user; Element elements = new Element("user"); // 给 user 节点添加属性 id; elements.setAttribute("id", "" + i); // 给 user 节点添加子节点并赋值; // new Element("name")中的 "name" 替换成表中相应字段,setText("xuehui")中 "xuehui // 替换成表中记录值; Element name = new Element("name"); name.setAttribute("id",""+i); name.setText("xuehui"); elements.addContent(name); elements.addContent(new Element("age").setText("28")); elements.addContent(new Element("sex").setText("Male")); // 给父节点list添加user子节点; root.addContent(elements); } XMLOutputter XMLOut = new XMLOutputter(); // 输出 user.xml 文件; XMLOut.output(Doc, new FileOutputStream("user.xml")); } public void jiexi() throws Exception { // 注意这里必须要抛出异常,否则会报错 SAXBuilder builder = new SAXBuilder(); Document doc = builder.build(new File("user.xml")); // 导入xml文件,xml文件名取名为test.xml Element root = doc.getRootElement(); // 获得根节点 这里是list List tempChildren = root.getChildren(); // 获得LIST的子接点user for(int i=0;i<tempChildren.size();i++){ Element temp1 = (Element) tempChildren.get(i); // 以得到第一个user结点为例,注意这里必须要强制转化一下 System.out.println("userID是"+temp1.getAttribute("id").getValue()); System.out.println("userName是"+temp1.getChild("name").getText());//取NAME Element name=temp1.getChild("name"); System.out.println("name的ID是-->"+name.getAttribute("id").getValue()); System.out.println("userAge是"+temp1.getChild("age").getText());//取AGE System.out.println("userSex是"+temp1.getChild("sex").getText());//取SEX // Element file = temp1.getChild("name"); 如果name里有属性 那么我门先取得NAME // System.out.println("file结点id、z的属性值分别是:id='" // + file.getAttribute("id").getValue() + "' z='" // + file.getAttribute("z").getValue() + "'");然后把name里的东西取出来 } } //修改XML public void updateXML(){ SAXBuilder builder = new SAXBuilder(); try { Document doc = builder.build(new File("user.xml")); Element root = doc.getRootElement(); // 获得根节点 这里是list List tempChildren = root.getChildren(); // 获得LIST的子接点user for(int i=0;i<tempChildren.size();i++){ Element temp1 = (Element) tempChildren.get(i); // 以得到第一个user结点为例,注意这里必须要强制转化一下 System.out.println("userID是"+temp1.getAttribute("id").getValue()); System.out.println("userName是"+temp1.getChild("name").getText());//取NAME Element name=temp1.getChild("name"); System.out.println("name的ID是-->"+name.getAttribute("id").getValue()); System.out.println("userAge是"+temp1.getChild("age").getText());//取AGE System.out.println("userSex是"+temp1.getChild("sex").getText());//取SEX name.setText("zzzz"); } File f=new File("user.xml"); if(f.exists()){ f.delete(); } XMLOutputter XMLOut = new XMLOutputter(); // 输出 user.xml 文件; XMLOut.output(doc, new FileOutputStream("user.xml")); } catch (JDOMException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } // 导入xml文件,xml文件名取名为test.xml } public static void main(String[] args) { Operate j2x = new Operate(); /** *这是生成XML文件 try { Operate j2x = new Operate(); System.out.println("生成 mxl 文件..."); j2x.BuildXMLDoc(); } catch (Exception e) { e.printStackTrace(); } * */ /** *这是解析XML文件 Operate j2x = new Operate(); try { j2x.jiexi(); } catch (Exception e) { e.printStackTrace(); } * */ j2x.updateXML(); } }
发表评论
-
动易标签大全
2009-06-24 13:08 2750网站通用标签适用于整 ... -
JAVA LIST MAP 是引用地址而不是复制
2009-03-10 10:36 4030StringBuffer aa=new StringBuffe ... -
取得上1次等入的session
2009-03-10 10:25 1538前言作为J2EE的重要组成部分的jsp和servlet规范中, ... -
JAVA 自定义标签 简介
2009-01-20 16:19 2368Test.jsp <!DOCTYPE HTML P ... -
无级栏目
2009-01-07 17:32 1292很早以前写的东西 这2天要用找了我10几分中 放上来做个笔记 ... -
excel导出文件
2009-01-06 15:48 1648// 创建一个新的excel文件,并将数据导入进去 publ ... -
图片光标定位
2008-12-24 17:25 1599<form action="2.jsp ... -
JAVA导出EXCEL
2008-12-19 10:29 3325Vector vector=listSparepart(con ... -
JAVA 读写文件
2008-11-14 09:44 1586public static void main(String ... -
img图片没找到onerror事件
2008-11-12 15:50 2941<script type="text/java ... -
HTMLArea onsubmit 提交验证问题
2008-10-31 11:21 1461在JSP中用上了HTMLArea后发现里边有个ONSUBMIT ... -
radio JS验证
2008-10-29 17:03 1498function checked(){ var isJu ... -
JAVA读文件夹
2008-10-28 09:05 2393public static boolean readfi ... -
java md5类
2008-10-16 16:00 3734public static String getMD5(byt ... -
DWR写个3级联动
2008-09-18 10:08 1555我原先写过1个拿prototype.js写过1个 可惜和htm ... -
添加时间的JS
2008-09-11 11:28 1068他同学小小那边有份 可惜他那个我用的时候JS 总在暴错 以前我 ... -
总结:子窗口创建及父窗口与子窗口之间通信
2008-09-05 16:46 35291、Javascript弹出子窗口 可以通过多种方式实现,下面 ... -
反射写SQL语句
2008-08-26 15:54 1021// 改 // public void update(Obj ... -
JAVA mysql插入时间
2008-08-21 10:18 3608MYSQL为DATATIME型的时候 pstmt.setTim ... -
java mysql批量导入优化
2008-08-08 09:18 2473Connection conn=dao.getConn(); ...
相关推荐
JAVA 解析XML和生成XML文档源码。比较全 1.DOM生成和解析XML文档 2.SAX生成和解析XML文档 3.DOM4J生成和解析XML文档 4.JDOM生成和解析XML
总结起来,实现“java解析xml动态生成树形菜单结构”的项目,需要掌握以下核心知识点: 1. Java的DOM解析XML,构建树形数据结构。 2. 设计和实现无限层级的树形菜单数据模型。 3. 使用`JSTree`库在前端渲染树形菜单...
Java提供了内置的`javax.xml.parsers`包,可以使用`DocumentBuilderFactory`和`DocumentBuilder`来解析XML文件。首先,创建`Document`对象,然后使用`parse()`方法解析XML文件。解析后,你可以通过`...
4. 解析XML:使用Java的DOM或StAX API解析XML,找到占位符并提取数据。 ```java DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder...
使用JAXB解析XML时,我们首先需要创建一个Java类模型,这个模型反映了XML文档的结构。每个XML元素对应一个Java类,类的属性对应元素的属性或子元素。例如,如果XML中有以下结构: ```xml <text>Some text here ...
在Java编程环境中,XML(可...总的来说,Java解析XML生成JSON对象的能力使得数据在不同平台和应用间无缝交换成为可能。通过学习和使用这样的工具类,开发者可以更高效地处理XML数据,并将其集成到基于JSON的系统中。
### Java解析XML字符串 在给定的代码示例中,我们看到了如何使用JDOM库来解析一个XML字符串,并对其进行操作。下面我们将详细解析这个过程: 1. **初始化XML源**:首先,将XML字符串转化为`StringReader`对象,这...
在IT行业中,调用Web服务并解析XML是常见的任务,特别是在Java开发中。Web服务,尤其是基于SOAP(Simple Object Access Protocol)的,提供了一种标准的跨平台、跨语言的数据交换方式。本教程将深入讲解如何在Java...
java解析xml的四种方法的比较,还有四种方法所用到的jar包 附带程序例子 1.DOM生成和解析XML文档 2.SAX生成和解析XML文档 3.DOM4J生成和解析XML文档 4.JDOM生成和解析XML
Java在线解析XML是一种常见的编程任务,特别是在处理Web服务、数据交换或者从XML文件中提取信息时。XML(Extensible Markup Language)是一种结构化数据格式,它允许数据以自定义的标签进行组织,使得数据的传输和...
本文将详细介绍如何解析XML并生成对应的Java类,以及使用工具助手来简化这一过程。 一、XML解析原理 1. DOM解析:DOM(Document Object Model)模型将XML文档视为一个树形结构,通过创建一个内存中的文档对象模型...
在Java中,有多种方式可以解析XML文档,主要包括DOM(Document Object Model)、SAX(Simple API for XML)和StAX(Streaming API for XML)。每种方法都有其优缺点,适用于不同的场景。 1. DOM解析:DOM是将整个...
Java解析和生成XML的知识点主要涵盖了使用JAXB(Java Architecture for XML Binding)框架来实现Java对象与XML(可扩展标记语言)之间的数据转换。JAXB提供了一种便捷的方式,通过注解(Annotation)来实现这一过程...
在Java开发中,XML(可扩展...总结起来,Java生成XML和XSD涉及到XML和XSD的基本概念,以及使用JAXB等Java库进行XML操作的技术。在实际项目中,理解并熟练运用这些知识对于处理结构化数据的序列化和反序列化至关重要。
标签"解析XML和生成XML的必备选择"表明,DOM不仅适用于生成XML,也常用于解析XML文档。解析XML时,`DocumentBuilder`会构建一个DOM树,然后可以通过DOM API查询和修改树中的节点。 总结一下,Java DOM提供了一套...
二、Java生成XML 1. DOM生成:使用DOM模型,可以通过`Document`对象创建XML文档,然后使用`Transformer`将其转换为字符串或写入文件。 ```java Document doc = createDocument(); // 创建Document对象 ...
Java代码PDF解析成XML...总的来说,Java PDF解析成XML是一项涉及PDF解析、数据提取和XML生成的技术任务。iTextPDF库提供了解决这个问题的关键工具,但实际的实现需要根据PDF的具体内容和你希望生成的XML结构进行定制。
本篇文章将深入探讨如何在Java中解析XML,以帮助你理解和实践相关知识。 一、DOM解析器 DOM(Document Object Model)解析器是Java中的一种常用方法,它将整个XML文档加载到内存中,形成一个树形结构。以下是一个...
1. **数据模型(Model)**:这是你要生成XML所依赖的数据,可以是Java对象、Map或者其他集合类型。例如,你可以创建一个包含多个元素的列表,每个元素都有属性如`name`、`age`等。 ```java List<Person> persons = ...
解析XML回Java对象同样简单,只需使用`fromXML()`方法: ```java String xmlInput = "<person id='1'><firstName>John</firstName><lastName>Doe</lastName></person>"; Person parsedPerson = (Person) xstream....