`
yuanfen860913
  • 浏览: 119768 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

一个可以完成读取、打印输出、保存xml等等功能的java例子

阅读更多

/*

* Created by IntelliJ IDEA.

* User: administrator

* Date: Mar 26, 2002

* Time: 1:24:56 PM

* To change template for new class use

* Code Style | Class Templates options (Tools | IDE Options).

*/

/*****readXml.java**********************

*This is a javabean.

*This bean read a xml file from a URL,and return a xmlDom

*

***** Created by Xiao Yusong2001-11-30 ****

*/

package com.chinacountry.util;

import java.util.*;

import java.net.URL;

import org.w3c.dom.*;

import javax.xml.parsers.*;

import java.io.*;

import org.apache.xml.serialize.OutputFormat;

import org.apache.xml.serialize.Serializer;

import org.apache.xml.serialize.SerializerFactory;

import org.apache.xml.serialize.XMLSerializer;

import org.xml.sax.InputSource;

public class xmlUtil implements java.io.Serializable {

public xmlUtil()

{

}

public static DocumentBuilder getBuilder()
throws ParserConfigurationException

{

DocumentBuilder builder = DocumentBuilderFactory.newInstance()
.newDocumentBuilder();

return builder;

}

// get a document from given file

public static Document getDocument(String path) throws Exception

{

// BufferedReader fileIn=new BufferedReader(new FileReader(path));

File f = new File(path);

DocumentBuilder builder = getBuilder();

Document doc = builder.parse(f);

return doc;

}

// get a document from InputStream

public static Document getDocument(InputStream in) throws Exception

{

DocumentBuilder builder = getBuilder();

Document doc = builder.parse(in);

return doc;

}

// create a empty document

public static Document getNewDoc() throws Exception

{

DocumentBuilder builder = getBuilder();

Document doc = builder.newDocument();

return doc;

}

// create a document from given string

public static Document getNewDoc(String xmlStr)

{

Document doc = null;

try

{

StringReader sr = new StringReader(xmlStr);

InputSource iSrc = new InputSource(sr);

DocumentBuilder builder = getBuilder();

doc = builder.parse(iSrc);

}

catch (Exception ex)

{

ex.printStackTrace();

}

return doc;

}

// save a document as a file at the given file path

public static void save(Document doc, String filePath)

{

try

{

OutputFormat format = new OutputFormat(doc);// Serialize DOM

format.setEncoding("GB2312");

StringWriter stringOut = new StringWriter();// Writer will be a
// String

XMLSerializer serial = new XMLSerializer(stringOut, format);

serial.asDOMSerializer();// As a DOM Serializer

serial.serialize(doc.getDocumentElement());

String STRXML = stringOut.toString(); // Spit out DOM as a String

String path = filePath;

writeXml(STRXML, path);

}

catch (Exception e)

{

e.printStackTrace();

}

}

// save a string(xml) in the given file path

public static void writeXml(String STRXML, String path)

{

try

{

File f = new File(path);

PrintWriter out = new PrintWriter(new FileWriter(f));

out.print(STRXML + "\n");

out.close();

}

catch (IOException e)

{

e.printStackTrace();

}

}

// format a document to string

public static String toString(Document doc)

{

String STRXML = null;

try

{

OutputFormat format = new OutputFormat(doc);// Serialize DOM

format.setEncoding("GB2312");

StringWriter stringOut = new StringWriter();// Writer will be a
// String

XMLSerializer serial = new XMLSerializer(stringOut, format);

serial.asDOMSerializer();// As a DOM Serializer

serial.serialize(doc.getDocumentElement());

STRXML = stringOut.toString(); // Spit out DOM as a String

}

catch (Exception e)

{

e.printStackTrace();

}

return STRXML;

}

// format a node to string

public static String toString(Node node, Document doc)

{

String STRXML = null;

try

{

OutputFormat format = new OutputFormat(doc);// Serialize DOM

format.setEncoding("GB2312");

StringWriter stringOut = new StringWriter();// Writer will be a
// String

XMLSerializer serial = new XMLSerializer(stringOut, format);

serial.asDOMSerializer();// As a DOM Serializer

serial.serialize((Element) node);

STRXML = stringOut.toString(); // Spit out DOM as a String

}

catch (Exception e)

{

e.printStackTrace();

}

return STRXML;

}

public static void main(String[] args) throws Exception

{

String pathRoot = "NeTrees.xml";

Document doc, doc1;

try

{

doc = xmlUtil.getDocument(pathRoot);

doc1 = xmlUtil.getDocument(pathRoot);

if (doc == doc1)

{

System.out.println("They aresame objects!");

}

else

{

System.out.println("They are different!");

OutputFormat format = new OutputFormat(doc);// Serialize DOM

format.setEncoding("GB2312");

StringWriter stringOut = new StringWriter();// Writer will be a
// String

XMLSerializer serial = new XMLSerializer(stringOut, format);

serial.asDOMSerializer();// As a DOM Serializer

serial.serialize(doc.getDocumentElement());

String STRXML = stringOut.toString(); // Spit out DOM as a
// String

System.out.println(STRXML);

}

}

catch (Exception ex)

{

System.out.print("Reading file\"" + pathRoot + "\" error!");

ex.printStackTrace();

}

}

}

分享到:
评论

相关推荐

    用java读取txt文件和xml文件

    接下来,我们讨论如何读取XML文件。Java提供了`javax.xml.parsers`包,包含`DocumentBuilderFactory`和`DocumentBuilder`类,它们用于解析XML文件并创建一个DOM(文档对象模型)表示。以下是一个基本示例: ```java...

    一个Java 解析XML的例子

    DOM4J是一个强大的Java XML API,它提供了丰富的功能,包括文档构建、遍历、查询以及XPath支持。 首先,让我们理解XML的基本概念。XML是一种自描述性的标记语言,其结构由元素、属性、文本节点等组成。为了在Java中...

    java读取xml文件

    为了读取XML文件,开发者通常会利用Java API或第三方库。本篇将详细介绍如何在Java中读取XML文件,以及如何利用第三方库增强XML处理能力。 首先,Java标准库JDK提供了一个内置的API——javax.xml.parsers包,它包含...

    java读取 配置 xml文件

    本篇文章将深入探讨如何在Java中读取XML配置文件,以及如何实现一个简易版的Spring框架。 首先,我们需要导入Java的DOM(Document Object Model)库,它提供了处理XML文档的标准API。在Java中,我们通常使用`javax....

    java读取xml文件生成文件

    以下是一个基本的Java代码示例,演示了如何读取XML文件: ```java import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.DocumentBuilder; import org.w3c.dom.Document; import org.w3c....

    java+xml联合编程简单例子

    5. **DOM4J**:DOM4J是另一个流行的Java XML库,它提供了丰富的功能,包括XPath查询、XML文档构建和修改等。 6. **XML Schema(XSD)**:XML Schema定义了XML文档的结构和数据类型,可以用于验证XML文档是否符合...

    java解析xml例子

    以下是一个简单的DOM解析XML的例子: ```java import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.DocumentBuilder; import org.w3c.dom.Document; import org.w3c.dom.NodeList; import ...

    java xml.java操作XML文档

    5. JAXB (Java Architecture for XML Binding): 这是一个用于将Java对象转换为XML表示和反之的框架。JAXB允许我们在Java类和XML之间自动映射,简化了数据序列化和反序列化的过程。 6. Transformer API: 提供了将XML...

    java读取XML文件内容小程序

    在这个特定的“java读取XML文件内容小程序”中,使用的是XAM(可能是指JAXB,Java Architecture for XML Binding)解析器,它是一种基于Java注解的XML绑定技术,可以将XML数据自动映射到Java对象,反之亦然。...

    java读取xml里面带两个例子

    以下是一个使用Java DOM解析器读取XML文件的简单示例: ```java import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.DocumentBuilder; import org.w3c.dom.Document; import org.w3c.dom....

    Java用DOM4J读取XML

    ### Java使用DOM4J读取XML知识点解析 #### 一、概述 在Java开发中,处理XML文件是一项常见的任务。DOM4J是一个简单且功能强大的Java库,用于处理XML文档。它提供了类似于DOM的API,但更为轻量级且易于使用。本篇将...

    java练习之XML读取

    本练习将深入探讨如何在Java中读取XML文件,以及如何利用XML解析器实现基本的SPRING IOC(Inversion of Control,控制反转)和STRUTS框架的模拟。 首先,我们来讨论XML读取。Java提供了多种方式来处理XML文件,如...

    java读取XML内容源代码

    在Java编程中,读取XML(eXtensible Markup Language)文件内容是一项常见的任务,尤其在处理配置数据、数据交换或者存储结构化信息时。XML因其可读性强、结构清晰的特点,被广泛应用于各种场景。本篇文章将详细介绍...

    jdom处理xml例子

    JDOM的目标是为Java开发者提供一个与平台无关的方式来创建、读取、修改和保存XML文档。通过JDOM,我们可以直接在内存中操作XML文档,这使得XML数据处理更加便捷。 **XML基础** XML(Extensible Markup Language)...

    java读取xml文件demo

    java实现的一个读取本地xml文件的例子,进入正题: 需要的包jdom2-2.0.6.jar:下载地址,http://mvnrepository.com/artifact/org.jdom/jdom2 此例子比较简单

    java通过xml导出word和excell例子

    4. **保存为XML**:最后,我们需要使用`XSSFWorkbook`的`write()`方法将工作簿写入到一个XML文件中,完成导出。 对于Word文件的导出,Java没有像Apache POI那样直接处理Word文档的库。但是,我们可以使用OpenOffice...

    java读取配置文件xml ,properties,txt

    在Java中,我们可以使用DOM(Document Object Model)、SAX(Simple API for XML)或StAX(Streaming API for XML)等解析器来读取XML文件。这里提供的`ExecuteXmlUtil.java`文件可能包含了使用DOM解析器的示例代码...

    java io流 xml 泛型 例子学习

    我们可以使用Java IO流读取这个文件,然后用DOM解析XML,将结果存储在一个泛型集合中。如下所示: ```java import java.io.*; import javax.xml.parsers.*; import org.w3c.dom.*; public class Example { public...

    java源码包---java 源码 大量 实例

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    java获取xml最简单的例子

    以上就是一个简单的Java解析XML的例子,适用于初学者。理解DOM的基本概念和使用方法后,你可以根据实际需求进行更复杂的XML操作,如修改、添加和删除XML节点。同时,也可以学习SAX解析,了解不同解析方式的适用场景...

Global site tag (gtag.js) - Google Analytics