- 浏览: 170028 次
- 性别:
- 来自: weihai
文章分类
最新评论
-
grylls:
蠢逼,也是醉了
JPA2.0使用Map (1) 单向一对多,令人湿望的EclipseLink -
spring_springweb:
java swing demo源代码下载:http://www ...
Java Swing: 为JButton设置ctrl 快捷键 -
li346985170:
...
Eclipse新建类中自动添加author. -
li346985170:
前辈好,请问问题解决了吗? 我也遇到这个问题了,劳烦前辈指导指 ...
HSSFCell的setCellType不好使? -
abeautifulday:
你也太happy了。
更改 .java 文件的编码格式
/* * To change this template, choose Tools | Templates * and open the template in the editor. * 读xml文件 */ package util.xml; import java.io.*; import java.util.Vector; import java.util.logging.Level; import java.util.logging.Logger; import org.w3c.dom.*; import javax.xml.parsers.*; import org.xml.sax.SAXException; public class ReadXML { private Vector<Vector<String>> v = null; private DocumentBuilder builder; private Document doc; public ReadXML() { try { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); builder = factory.newDocumentBuilder(); } catch (ParserConfigurationException ex) { Logger.getLogger(ReadXML.class.getName()).log(Level.SEVERE, null, ex); } } public Vector<Vector<String>> read(String fileName,String oneName,String[] xmlNames) { File file = new File(fileName); if (!file.exists()) { return null; } try { doc = builder.parse(fileName); } catch (SAXException ex) { Logger.getLogger(ReadXML.class.getName()).log(Level.SEVERE, null, ex); } catch (IOException ex) { Logger.getLogger(ReadXML.class.getName()).log(Level.SEVERE, null, ex); } v = new Vector<Vector<String>>(); try { NodeList nl = doc.getElementsByTagName(oneName); Vector<String> v_s; for (int i = 0; i < nl.getLength(); i++) { v_s = new Vector<String>(); for (int j = 0; j < xmlNames.length; j++) { v_s.add(doc.getElementsByTagName(xmlNames[j]).item(i).getTextContent()); } v.add(v_s); } } catch (Exception ex) { Logger.getLogger(ReadXML.class.getName()).log(Level.SEVERE, null, ex); } return this.v; } }
/* * To change this template, choose Tools | Templates * and open the template in the editor. * 写xml文件 */ package util.xml; /** * * @author Administrator */ import java.io.File; import java.io.FileOutputStream; import java.io.OutputStreamWriter; import java.util.Vector; import java.util.logging.Level; import java.util.logging.Logger; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; import javax.xml.transform.OutputKeys; 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; /** * 功能: * @author yaos email: yaos@isoftstone-ai.com * @date 2008 11 25 */ public class WriteXML { private DocumentBuilder db; private Document doc; //配置信息 private String fileName; private String configName; private String oneName; private String[] xmlNames; public WriteXML(String fileName, String configName, String oneName, String[] xmlNames) { try { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); db = dbf.newDocumentBuilder(); } catch (ParserConfigurationException ex) { Logger.getLogger(WriteXML.class.getName()).log(Level.SEVERE, null, ex); } this.fileName = fileName; this.configName = configName; this.oneName = oneName; this.xmlNames = xmlNames; } public void write(Vector<Vector<Object>> v) { this.deleteFile();//删除文件 this.doc = db.newDocument(); Element root = doc.createElement(configName); for (Vector<Object> v_s : v) {//保存 root.appendChild(this.saveOne(v_s)); } this.doc.appendChild(root); this.export();//导出文件 } private void deleteFile() { File file = new File(fileName); if (file.exists()) { file.delete(); } } //下面的方法是写xml到.xml的文档 private void export() { TransformerFactory tf = TransformerFactory.newInstance(); Transformer transformer;//此实例可以用于处理来自不同源的 XML,并将转换输出写入各种接收器。 try { transformer = tf.newTransformer(); DOMSource source = new DOMSource(doc);//创建带有 DOM 节点的新输入源 transformer.setOutputProperty(OutputKeys.ENCODING, "utf-8");//设置转换中实际的输出属性 transformer.setOutputProperty(OutputKeys.INDENT, "yes");//设置转换中实际的输出属性 OutputStreamWriter pw = new OutputStreamWriter(new FileOutputStream(fileName), "UTF-8"); StreamResult result = new StreamResult(pw);//从字节流构造 StreamResult 充当转换结果的持有者,可以为 XML、纯文本、HTML 或某些其他格式的标记 transformer.transform(source, result);//将 XML Source 转换为 Result pw.close();//关闭 } catch (Exception ex) { Logger.getLogger(WriteXML.class.getName()).log(Level.SEVERE, null, ex); } } //将一行数据保存在一个excel中 private Element saveOne(Vector<Object> v_s) {//用Object Element root = doc.createElement(oneName); for (int i = 0; i < v_s.size(); i++) { Element e = doc.createElement(xmlNames[i]);// if (v_s.get(i) == null) { e.setTextContent("");//这里有个异常! } else { e.setTextContent(v_s.get(i).toString());//这里有个异常! } root.appendChild(e); } return root; } }
一个例子
/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package util.xml; /** * * @author Administrator */ public class XMLStruct { public static String fileName = "cable.xml"; public static String[] xmlNames = {"始","末","长度"}; public static String configName = "totalNodes"; public static String oneName = "subNodes"; }
发表评论
-
ME*****
2012-03-06 22:23 0I'm friendly, easy to talk to a ... -
备份ubuntu ip
2012-03-05 16:55 0auto lo iface lo inet loopback -
lombok的canEqual/equals
2011-11-22 17:22 2305public boolean equals(Objec ... -
getReference
2011-08-16 10:55 1153Get an instance, whose state ma ... -
重写equals hashCode()
2011-05-28 22:59 0@Override public bool ... -
Container managed entity manager
2011-05-02 19:07 0严重: Exception while preparing t ... -
再立把志
2011-04-25 21:38 36今天又受打击了,给项目组建议用lombok被否定了,之前主张的 ... -
Netbeans win7下中文乱码
2011-04-22 13:57 0文件:C:\Program Files\NetBeans 7. ... -
java自定义排序
2011-04-14 10:44 0@Override public Combo sel ... -
JEE原版的登录???
2011-04-09 21:01 0JEE原版的登录??? -
国际化,以及解决clone问题???
2011-04-09 21:01 0国际化,以及解决clone问题??? -
ThreadLocal ???
2011-04-09 21:00 0ThreadLocal ??? -
一次重构的经历
2011-04-07 07:45 0第一部分,为神马重构? 我们领导貌似不会提议让我们大面积重构 ... -
断电,执行了一半的事务怎么办?
2011-04-06 13:26 0断电,执行了一半的事务怎么办? 可以用程序模拟一下。 -
instanceof ?
2011-04-06 10:05 0instanceof ? -
怎么写,程序才能死锁?
2011-04-05 17:03 3702若不了解线程,事务,死锁相关的基础知识,请先去了解一下,一点点 ... -
附注 OF 《怎么写,程序才能死锁?》
2011-04-05 17:03 1220这只是一篇附注,请看博客文章 怎么写,程序才能死锁? http ... -
JPA 主键生成与May框架冲突
2011-03-23 16:41 0JPA 主键生成与May框架冲突 -
JPA 使用明细
2011-03-22 10:55 0引用<?xml version="1.0&qu ... -
以is作为名称开头的属性,它的Getter方法名应该是什么样的?
2011-03-21 22:47 1163--> private String isAbc; ...
相关推荐
* 本类是专门解析XML文件的,主要用于为系统读取自己的配置文件时提供最方便的解析操作 * @author HX * */ public class XmlManager { /** * 得到某节点下某个属性的值 * @param element 要获取属性的...
本文将详细介绍如何创建一个Java通用的XML解析工具类,以便于在项目中复用和简化XML处理。 首先,我们来看DOM解析方式。DOM解析器会将整个XML文档加载到内存中,形成一棵树形结构,便于对XML进行随机访问。以下是一...
本人没分了,特别来分享一下,通用的XML读写工具类,同志们下下绝对不后悔
在IT行业中,代码重构是一项重要的技能,它有助于提高...总之,这次重构之旅旨在通过创建一个高效的XML工具类,提高代码的可复用性和性能。对于任何需要处理XML数据的Java开发者来说,这是一个值得学习和借鉴的案例。
而SAX解析器采用事件驱动的方式,逐行读取XML文件,适合处理大型XML文件以避免内存消耗。 对于多级XML,DOM解析更便于操作。以下是一个使用Java DOM解析XML的步骤: 1. 引入必要的库: 需要引入`javax.xml....
//通过文件路径及文件名读取xml public XMLReader(String path, String filename); //初始化读取包下的的XML文件 public XMLReader(Package package1, String fileName); //读取WEB-INF下的xml文件 public XMLReader...
另一方面,`objectXmlDecoder`方法打开XML文件,创建一个`XMLDecoder`实例,读取XML数据并将其转换回Java对象。这些对象被添加到一个`ArrayList`中并返回。注意,如果XML文件中包含多个序列化的对象,`XMLDecoder`将...
首先,需要为XML元素创建对应的Java类,然后使用`javax.xml.bind.JAXBContext`和`Unmarshaller`进行解码,使用`Marshaller`进行编码。 4. **DOM4J**: DOM4J是一个流行的Java XML API,提供了丰富的功能,包括DOM...
Java 读取 XML 文件是 Java 开发中常见的一项任务,XML(eXtensible Markup Language)作为一种可扩展标记语言,广泛用于数据交换、配置存储等领域。本教程将深入讲解如何在 Java 中处理 XML 文件,同时涉及 XML 的 ...
Java操作XML工具包是开发过程中不可或缺的部分,尤其是在处理与数据交换、配置文件或者与服务器通信相关的任务时。这里提到的两个关键库——XStream和DOM4J,都是Java中广泛使用的XML处理工具。 XStream是一个Java...
[工具类] XML工具类2 .java.txt [工具类] 测试Mysql的最大连接数 .java.txt [工具类] 读取、打印输出、保存xml .java.txt [工具类] 分页split_page.jsp .jsp.txt [工具类] 获得汉字拼音首字母的java工具类.java.txt ...
[工具类] XML工具类2 .java.txt [工具类] 测试Mysql的最大连接数 .java.txt [工具类] 读取、打印输出、保存xml .java.txt [工具类] 分页split_page.jsp .jsp.txt [工具类] 获得汉字拼音首字母的java工具类.java.txt ...
在IT行业中,无论是C#还是Java,都有强大的库支持对XML文件的读写操作。本教程将详细介绍如何使用C#和Java来创建高效的XML辅助工具,以简化XML文件的处理。 ### C# XML处理 在C#中,我们可以利用.NET Framework...
在实际应用中,XML-repair工具类通常集成到XML解析或处理流程中,如在读取XML文件之前先进行修复,或者在接收到XML数据后立即进行处理。这样可以确保后续的操作,如XML解析、DOM构建、XPath查询等,都能顺利进行。 ...
本文将深入探讨如何使用Java来读取XML数据。 首先,我们需要了解XML的基本结构。XML文档由元素(Element)、属性(Attribute)、文本内容(Text Content)等组成。每个XML文档都有一个根元素,其他元素则嵌套在根...
XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用于数据...`util`工具类和`MyTest`测试类提供了一个实现框架,通过引入相应的依赖,开发者可以快速地将XML数据转化为可操作的Java对象,反之亦然。
在Java编程中,读取XML文件并将其转换为树形结构是一种常见的操作,尤其是在处理配置文件、数据交换或解析XML文档时。以下是一篇详细解释如何实现这一过程的文章。 首先,我们需要了解XML(eXtensible Markup ...
1.[工具类] 读取、打印输出、保存xml .java 2.[工具类] Java中计算任意两个日期之间的工作天数 .java 3.[工具类] MD5 .java 4.[工具类] 时间工具TimeUtil.java 5.[工具类] 通信服务端simpleServer 6.[工具类] 使用...
本工具类包含了对XML进行解析的必备组件,无需额外安装其他依赖,下载后即可直接应用于项目中。 1. **DOM解析器** DOM(Document Object Model)是XML文档的一种树形表示方式,它将XML文档转化为内存中的对象模型...