- 浏览: 1653484 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (405)
- C/C++ (16)
- Linux (60)
- Algorithm (41)
- ACM (8)
- Ruby (39)
- Ruby on Rails (6)
- FP (2)
- Java SE (39)
- Java EE (6)
- Spring (11)
- Hibernate (1)
- Struts (1)
- Ajax (5)
- php (2)
- Data/Web Mining (20)
- Search Engine (19)
- NLP (2)
- Machine Learning (23)
- R (0)
- Database (10)
- Data Structure (6)
- Design Pattern (16)
- Hadoop (2)
- Browser (0)
- Firefox plugin/XPCOM (8)
- Eclise development (5)
- Architecture (1)
- Server (1)
- Cache (6)
- Code Generation (3)
- Open Source Tool (5)
- Develope Tools (5)
- 读书笔记 (7)
- 备忘 (4)
- 情感 (4)
- Others (20)
- python (0)
最新评论
-
532870393:
请问下,这本书是基于Hadoop1还是Hadoop2?
Hadoop in Action简单笔记(一) -
dongbiying:
不懂呀。。
十大常用数据结构 -
bing_it:
...
使用Spring MVC HandlerExceptionResolver处理异常 -
一别梦心:
按照上面的执行,文件确实是更新了,但是还是找不到kernel, ...
virtualbox 4.08安装虚机Ubuntu11.04增强功能失败解决方法 -
dsjt:
楼主spring 什么版本,我的3.1 ,xml中配置 < ...
使用Spring MVC HandlerExceptionResolver处理异常
dom对xml的操作:
import javax.xml.parsers.*; import javax.xml.transform.*; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import org.xml.sax.*; import java.io.*; import org.w3c.dom.*; public class control implements java.io.Serializable { private static String xmlStr=""; private static int index=3; //private static final String PATH="file:///"; public control() { } public String getString(){ return xmlStr; } public static Document getDocument(String filename) throws Exception { xmlStr=""; DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); // 设定解析的叁数 dbf.setIgnoringComments(true); dbf.setIgnoringElementContentWhitespace(true); DocumentBuilder db = dbf.newDocumentBuilder(); //导入XML文件 Document doc = db.parse(filename); return doc; } public int addElement(Node node,String name,String sex,String age, String tel){ Element oRoot=((Document)node).getDocumentElement(); Element ename =((Document)node).createElement("name"); Text tname =((Document)node).createTextNode(name); ename.appendChild(tname); Element esex = ((Document)node).createElement("sex"); Text tsex = ((Document)node).createTextNode(sex); esex.appendChild(tsex); Element eage = ((Document)node).createElement("age"); Text tage = ((Document)node).createTextNode(age); eage.appendChild(tage); Element etel = ((Document)node).createElement("tel"); Text ttel = ((Document)node).createTextNode(tel); etel.appendChild(ttel); Element stu =((Document)node).createElement("student"); stu.setAttribute("id",Integer.toString(index)); index++; stu.appendChild(ename); stu.appendChild(esex); stu.appendChild(eage); stu.appendChild(etel); oRoot.appendChild(stu); save((Document)node); if(stu==null) return 0; return 1; } public void traverseTree(Node node) throws Exception { if(node == null) { return; } int type = node.getNodeType(); switch (type) { // handle document nodes case Node.DOCUMENT_NODE: { xmlStr+="<tr>"; traverseTree(((Document)node).getDocumentElement()); break; } // handle element nodes case Node.ELEMENT_NODE: { String elementName = node.getNodeName(); if(elementName.equals("student")) { xmlStr+="</tr><tr>"; } NodeList childNodes =node.getChildNodes(); if(childNodes != null) { int length = childNodes.getLength(); for (int loopIndex = 0; loopIndex <length ; loopIndex++) { traverseTree(childNodes.item(loopIndex)); } } break; } // handle text nodes case Node.TEXT_NODE: { String data = node.getNodeValue().trim(); if((data.indexOf(" ") <0) && (data.length()> 0)) { xmlStr+="<td>"+data+"</td>"; } } } } //增加的保存操作 private void save(Document doc){ try{ TransformerFactory tFactory =TransformerFactory.newInstance(); Transformer transformer = tFactory.newTransformer(); DOMSource source = new DOMSource(doc); StreamResult result = new StreamResult(new java.io.File("ok.xml")); transformer.transform(source, result); }catch(TransformerConfigurationException e) { e.printStackTrace(); }catch(TransformerException e) { e.printStackTrace(); } } public static void main(String []args){ control ctrl = new control(); try{ Document doc = ctrl.getDocument("ok.xml"); String name = "haha"; String sex = "female"; String age = "22"; String tel = "23256"; int i=ctrl.addElement(doc,name,sex,age,tel); Element oRoot=(doc).getDocumentElement(); ctrl.traverseTree(oRoot); String str = ctrl.getString(); System.out.println(str); }catch(Exception e){ e.printStackTrace(); } } }
发表评论
-
Builder模式遇到继承
2013-10-13 13:48 0interface Self<T extends ... -
Builder模式遇到集成
2013-10-13 13:47 0package com.qunar.qss.business. ... -
JVM调优Step by Step
2012-02-02 17:38 0现代的JVM能够适应于各种应用和领域,每个应用和领域的使用 ... -
commons-lang StringUtils#split的坑
2011-12-31 10:11 3152今天用StringUtils#split,陷入了前两个坑。需求 ... -
使用scala.sys.process包和系统交互
2011-07-19 00:00 6489在Java中我们可以使用Runtime.getRuntime( ... -
HttpClient Json请求工具
2011-05-05 18:32 17848发送Json请求,结果返回Json. public sta ... -
利用Java反射实现通用的Excel报表
2011-04-12 16:00 2018最近有很多客户报表需要提供客户下载,需要生成一个Excel的格 ... -
深入异常处理
2011-03-31 20:46 1799异常处理是写一个健壮 ... -
Java序列化注意一些点
2011-03-12 21:04 18441.序列化ID的问题: 标示了版本号,版本号一致才能反序列化成 ... -
Java动态代理
2010-09-24 00:34 4458Java提供了动态代理,可以完成AOP和装饰模式的功能,主要的 ... -
Java Timestamp是和ExtJS的timestamp不兼容
2010-08-09 20:33 3351Timestamp纳秒级别的,ExtJS的timestamp使 ... -
XML DocumentBuilder#parse(String str)
2010-07-06 15:55 3885DocumentBuilderFactory dbf = ... -
[备忘]String#split/substring的子串会共享原来大的String
2010-03-29 17:18 1489如果每次需要大字符串中的很小的一个字串,可能会引起内存中大量的 ... -
runtime.exec()执行进程block死锁问题
2010-01-18 21:39 5284最近在java代码中使用runtime.exec执行rsync ... -
URL中文问题
2010-01-08 14:46 10523最近使用HttpClient,和Java的java.net.U ... -
A TaskExecutor Impl
2009-12-07 11:33 1624import java.util.ArrayList; im ... -
使用XStream把Java对象XML/JSON格式的序列化和反序列化
2009-05-05 11:37 6235试了一下Thoughtworks的XStream,以测试驱动和 ... -
从《编程的未来》这篇文章想到C++和Java语言的爽与不爽
2009-05-01 23:44 3967从编程的未来这篇文 ... -
《Effetive Java》读书笔记二
2009-02-23 14:23 1601第二章 所有对象共有的 ... -
《Effetive Java》读书笔记一
2009-02-19 11:36 2180《Effetive Java》和 《Effective C++ ...
相关推荐
在Web开发领域,jQuery是一个不可或缺的JavaScript库,它极大地简化了DOM操作、事件处理、动画效果以及Ajax交互等任务。本文将深入探讨jQuery的核心概念和常见用法,帮助读者更好地理解和运用这个强大的工具。 一、...
这个“牛刀小试的汇编教程”是为初学者设计的一份入门教材,旨在帮助学习者快速理解和掌握汇编语言的基本概念和操作。 汇编语言与机器语言紧密相关,每一行汇编代码都可以直接转换成相应的机器码,执行效率高,但...
数组允许存储多个相同类型的数据,而指针则可以存储变量的地址,实现对内存的直接操作。理解指针的使用和操作,如指针的声明、赋值、解引用等,对于深入理解和使用C语言至关重要。 结构体和联合体是C语言中复合数据...
在Linux系统中,项目开发往往涉及到...无论是对硬件设备的控制,还是提高系统效率,Linux驱动开发都是一个必不可少的环节。因此,这个主题的学习对于想要在Linux环境中进行项目开发的工程师来说,具有极高的实用价值。
- 文档建议在股价放量突破前一根阴线4/5以上时买入,这反映了对价格波动的波段操作策略。同时,当股价达到高位时应保持谨慎。 6. **建仓区**: - 建仓区的计算基于VARO7,当该值小于10时,认为是适合建仓的区域,...
XSL(Extensible Stylesheet Language)是一种...总结来说,"XSL练习小试"是一个关于如何使用XSLT处理XML数据的实际操作。通过学习和实践,我们可以更好地掌握XSLT的语法和技巧,从而提高处理XML文档的效率和灵活性。
Android 小试牛刀1 博文链接:https://huangpengxiao.iteye.com/blog/199497
### XP操作技巧详解 在日常使用Windows XP操作系统的过程中,掌握一些快捷键可以帮助我们更高效、更便捷地完成各种任务。本文将对给定文件中的XP技巧进行详细解析,并结合实际应用场景进行说明。 #### 一、文件...
《牛刀小试VC》是一本...无论你是对编程感兴趣的学生,还是希望转行的职场新人,这本书都将引导你迈入编程的大门,开启你的VC++之旅。通过学习和实践,你将逐渐掌握这个强大工具,并能够开发出自己的Windows应用程序。
本文件“通达信指标公式源码小试牛刀.doc”分享了一些自定义的技术指标公式,以下是对这些公式的详细解读: 1. **VAR1**:这是基于N日最低价(LLV)和最高价(HHV)计算的一个动量指标。它通过计算收盘价相对于价格...
总的来说,这个“hibernate小试”资源提供了一个基础的Hibernate实践教程,涵盖了数据库连接配置、实体类定义、映射文件创建、以及基本的CRUD操作。对于初学者来说,这是一个很好的起点,帮助理解Hibernate的工作...
【知识点详解】 1. 营销漏斗理论:在描述中提到的“营销漏斗”,是指潜在...这些知识点涵盖了电商营销、谷歌广告平台的使用、营销漏斗策略以及广告优化等多个方面,对理解数字营销和谷歌广告平台的运作具有重要意义。
在Windows环境下,我们可以通过命令行工具CMD来操作MongoDB数据库。首先,正确安装MongoDB后,需要配置环境变量,确保系统能够找到MongoDB的可执行文件。MongoDB的默认安装路径通常是"C:\Program Files\MongoDB\...
在HTML5学习中,使用jQuery可以帮助初学者更轻松地理解JavaScript和DOM操作。 4. **image**:这是一个文件夹,可能包含了用于这些HTML示例的图片资源。HTML5提供了新的图像元素和属性,如`<img>`元素的`srcset`和`...
这篇博客作者通过个人实践,分享了对Hibernate框架的理解与应用。尽管描述中没有提供具体细节,但可以推断,作者可能讲解了如何在项目中集成Hibernate,以及进行简单的数据操作。 【标签】:“源码”、“工具” ...
标题中的“JExcel / 小试牛刀”表明这是一个关于使用JExcel库进行电子表格操作的实践案例。JExcel是一个Java库,它允许开发者在Java应用程序中读取、写入和修改Excel文件,极大地简化了与Excel数据交互的工作。在这...
暴雪作业(修改,小试牛刀,大家给点意见[配有音乐)
小试牛刀.exe