- 浏览: 1317946 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (471)
- 原创文章 (4)
- Database (84)
- J2SE (63)
- Web (26)
- Javascript (30)
- Lucene (11)
- os (13)
- 算法 (8)
- Webservice (1)
- Open projects (18)
- Hibernate (18)
- Spring (15)
- Css (2)
- J2ee (2)
- 综合技术 (18)
- 安全管理 (13)
- PatternsInJava (27)
- NIO (5)
- Ibatis (2)
- 书籍收藏 (1)
- quartz (7)
- 并发编程 (15)
- oracle问题 (2)
- ios (60)
- coco2d-iphone (3)
- C++ (6)
- Zookeeper (2)
- golang (4)
- animation (2)
- android (1)
最新评论
-
dandingge123:
【引用】限制UITextField输入长度的方法 -
qja:
...
对List顺序,逆序,随机排列实例代码 -
安静听歌:
现在在搞这个,,,,,哎~头都大了,,,又freemarker ...
通用大型网站页面静态化解决方案(一) -
springdata-jpa:
java quartz定时任务demo教程源代码下载,地址:h ...
Quartz 配置参考 -
马清天:
[b][/b][list][*]引用[u][/u][/list ...
通用大型网站页面静态化解决方案(一)
写道
import java.io.File;
import java.io.FileOutputStream;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
@SuppressWarnings("unchecked")
public class Test {
public static void main(String agr[]) {
try {
SAXParserFactory saxFactory = SAXParserFactory.newInstance();
SAXParser saxParser = saxFactory.newSAXParser();
MyHandler handler = new MyHandler();
saxParser.parse(new File("MyXml.xml"), handler);
DocumentBuilderFactory factory = DocumentBuilderFactory
.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = (Document) builder.newDocument();
document.setXmlVersion("1.0");
Element study = document.createElement("学生成绩表");
document.appendChild(study);
String[] strs = handler.str;
int length = strs.length;
for (int k = 1; k <= length; k++) {
study.appendChild(document.createElement("学生"));
}
NodeList nodeList = document.getElementsByTagName("学生");
int size = nodeList.getLength();
for (int k = 0; k < size; k++) {
Node node = nodeList.item(k);
if (node.getNodeType() == Node.ELEMENT_NODE) {
node.appendChild(document.createElement("学生姓名"));
}
}
nodeList = document.getElementsByTagName("学生姓名");
size = nodeList.getLength();
for (int k = 0; k < size; k++) {
Node node = nodeList.item(k);
if (node.getNodeType() == Node.ELEMENT_NODE) {
node.appendChild(document.createTextNode(strs[k]));
}
}
TransformerFactory transFactory = TransformerFactory.newInstance();
Transformer transformer = transFactory.newTransformer();
DOMSource domSource = new DOMSource(document);
File file = new File("新学生成绩表.xml");
FileOutputStream out = new FileOutputStream(file);
StreamResult xmlResult = new StreamResult(out);
transformer.transform(domSource, xmlResult);
} catch (Exception e) {
System.out.println(e);
}
}
}
class MyHandler extends DefaultHandler {
String[] str = new String[2];
boolean bool = false;
int i = 0;
@Override
public void characters(char[] ch, int start, int length)
throws SAXException {
String text = new String(ch, start, length);
if (bool) {
str[i] = text.trim();
i++;
bool = false;
}
}
@Override
public void startElement(String uri, String localName, String qName,
Attributes atts) throws SAXException {
if (qName.equals("学生姓名")) {
bool = true;
}
}
}
import java.io.FileOutputStream;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
@SuppressWarnings("unchecked")
public class Test {
public static void main(String agr[]) {
try {
SAXParserFactory saxFactory = SAXParserFactory.newInstance();
SAXParser saxParser = saxFactory.newSAXParser();
MyHandler handler = new MyHandler();
saxParser.parse(new File("MyXml.xml"), handler);
DocumentBuilderFactory factory = DocumentBuilderFactory
.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = (Document) builder.newDocument();
document.setXmlVersion("1.0");
Element study = document.createElement("学生成绩表");
document.appendChild(study);
String[] strs = handler.str;
int length = strs.length;
for (int k = 1; k <= length; k++) {
study.appendChild(document.createElement("学生"));
}
NodeList nodeList = document.getElementsByTagName("学生");
int size = nodeList.getLength();
for (int k = 0; k < size; k++) {
Node node = nodeList.item(k);
if (node.getNodeType() == Node.ELEMENT_NODE) {
node.appendChild(document.createElement("学生姓名"));
}
}
nodeList = document.getElementsByTagName("学生姓名");
size = nodeList.getLength();
for (int k = 0; k < size; k++) {
Node node = nodeList.item(k);
if (node.getNodeType() == Node.ELEMENT_NODE) {
node.appendChild(document.createTextNode(strs[k]));
}
}
TransformerFactory transFactory = TransformerFactory.newInstance();
Transformer transformer = transFactory.newTransformer();
DOMSource domSource = new DOMSource(document);
File file = new File("新学生成绩表.xml");
FileOutputStream out = new FileOutputStream(file);
StreamResult xmlResult = new StreamResult(out);
transformer.transform(domSource, xmlResult);
} catch (Exception e) {
System.out.println(e);
}
}
}
class MyHandler extends DefaultHandler {
String[] str = new String[2];
boolean bool = false;
int i = 0;
@Override
public void characters(char[] ch, int start, int length)
throws SAXException {
String text = new String(ch, start, length);
if (bool) {
str[i] = text.trim();
i++;
bool = false;
}
}
@Override
public void startElement(String uri, String localName, String qName,
Attributes atts) throws SAXException {
if (qName.equals("学生姓名")) {
bool = true;
}
}
}
发表评论
-
J2ME 的优化措施
2012-07-11 02:15 1123常见的性能瓶颈:1.文件的读写和网络的操作2.CPU3.内存4 ... -
JAVA缓存 - Cache类
2011-09-28 11:04 4556JAVA缓存有两种: 一、文件缓存,是指把数据存储在磁盘上 ... -
Java注释(Annotation)详解
2011-03-31 18:22 2365注释:在一个类中可以有多个,类似于一个类可以有多个实例; ... -
Java去除字符串中的空格、回车、换行符、制表符
2011-02-15 11:06 3520本方法采用的是java的正则表达式 import jav ... -
线程池编程
2011-01-23 21:02 1072线程池编程 -
设计模式:Java语言中的应用
2011-01-23 20:59 1287设计模式:Java语言中的应用 -
java用了中间缓存变量
2011-01-23 18:37 2320Java语法、语言特性与机制 2011-01-22 19:1 ... -
Java集合总结
2011-01-19 11:16 3779Set:不区分元素的顺序,不允许出现重复的值list:区分元素 ... -
java.util.current的主要方法简介
2011-01-08 22:18 3406JDK5中增加了Doug Lea的并发库,这一引进给java线 ... -
线程池
2011-01-08 21:03 2031对每个客户都分配一个新的工作线程。当工作线程与客户通信结束,这 ... -
SimpleDateFormat
2010-12-10 16:11 1326With SimpleDateFo ... -
使用 XStream 在 JavaBean 与 XML/JSON 之间相互转换
2010-12-10 14:24 1521XML 和 JSON 是当今常用的两种数据描述与传输的格式,特 ... -
Linux上JDK的 安装和卸载 详细 (转)
2010-11-27 15:48 1888安装 1. 去http://java.sun.com ... -
java 路径问题
2010-11-26 16:21 12601.JSP/Servlet中获得当前应用的相对路径和绝对路径 ... -
对synchronized(this)的一些理解
2010-11-25 23:41 986一、当两个并发线程访问同一个对象object中的这个synch ... -
Externalizable
2010-11-20 22:41 1325被Serializable接口声明的类的对象的内容都将被序列化 ... -
Java实现文件拷贝的4种方法(转)
2010-11-15 12:33 1216... -
Java内省和反射机制三步曲之 - 内省
2010-11-11 12:15 1316经过多方面的资料搜集整理,写下了这篇文章,本文主要讲解java ... -
java内省机制
2010-11-11 11:10 2372反射 (Reflection):反射就是让你可以通 ... -
Design Pattern: Thread-Specific Storage 模式
2010-11-11 00:00 1166无论如何,要编写一个多执行绪安全(thread-safe)的程 ...
相关推荐
这个是一个C#编写的xml处理类
C# xml处理和List的Sort排序C# xml处理和List的Sort排序C# xml处理和List的Sort排序
golang 的xml处理库 dom4g提供xml简便的操作方法,如节点 增加,删除,查询,属性增加,修改,删除,查询等功能 具体操作可以见测试文件dom_test.go 标签:Dom4g
个人搜集的银行面试资源,不是面经,而是银行感兴趣的业务技术,包括Spring、Oracle、XML处理技术,大多是ppt,简单直观,供大家快速浏览,面试前必备。
今天我们来看看AS3中新的XML处理方法:E4X,直到现在,ECMA脚本语言规范(ECMA-262)--AscriptScript 3.0的核心基础,并没有提供任何的XML数据处理类或方法。AcriontScript之前的版本(从Flash 5中的ActionScript...
通常当我们提起XML的使用时,最头痛的部分便是XML的verbosity与XML的解析速度,当需要处理大XML文件时这个问题便变得格外严重。我在这里提及的,便是如何优化XML处理速度的话题。
xml处理封装源码
pugixml,20190407最新源代码。pugixml是快速的XML处理引擎
borland c++ builder 6 xml处理总结,xml文件处理的控件使用
minixml,20190314 最新源代码。minixml是适合于嵌入式环境的XML处理引擎,跨平台
很详细的JSON和XML处理代码,包含了异步处理,handler,等线程操作。
对xml文件进行增删改查,手动创建树形结构,程序根据树形结构自动生成xml文件
XML视频教程--(XML处理指令)压缩包2 (分1、2、3、4卷,必须全部下载了才能解压缩)
xml处理类,按照xmldocument和xmlnode的方式对xml进行操作。对于习惯api操作的工程师来说非常方便
java实用工具包大众型XML处理 见example下例子
工业级的XML处理类集合 可以完成对XML的各种处理 功能强大,使用简单易懂 共有9000多行的代码绝对可以长久参考
进行网络请求与XML处理,并且对处理的数据进行筛选
pugixml 是一个轻量级的 C XML处理库。它具有以下特点:1、类似DOM接口并具有丰富的遍历/修改功能。2、非常快的XML解析验证。3、XPath 1实现复杂的数据驱动的树查询。4、完全Unicode编码支持 标签:pugixml
让xml处理无门槛,你会爱上使用xml文件。 该包主要工作是封装,把操作简单明了化,可以让那些对document的东东望而生畏的人不用去"头痛",使用xml处理很简单明了。上面的3个例子只有取属性,其实还有advanceGetNode...
XML视频教程--(XML处理指令)压缩包1 (分1、2、3、4卷,必须全部下载了才能解压缩)