首先将xml的格式展示出来,如下

<?xml version="1.0"?>
<configuration>
<connectionStrings name="zhangsan">
<add name="dbSqlServer" connectionString="Data Source=.;Initial Catalog=Life;User ID=sa;pwd=hzsoft"/>
<add name="dbAccess" connectionString="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=|DataDirectory|\Life.mdb;"/>
<add name="dbSqlite" connectionString="Data Source=|DataDirectory|\Life.db3;Pooling=true;FailIfMissing=false" providerName="System.Data.SQLite"/>
</connectionStrings>
</configuration>

此处采用的读取方式是DOM4J,需要先下载对应的jar包,具体下载地址如下:http://nchc.dl.sourceforge.net/sourceforge/dom4j/dom4j-1.6.1.zip

java的具体代码如下:

import java.io.File;
import java.util.List; import org.dom4j.*;
import org.dom4j.io.SAXReader; public class Hello { public static void main(String[] args) {
// TODO Auto-generated method stub
SAXReader reader = new SAXReader();
File f = new File("D:\\Web.xml"); try {
Document document = reader.read(f);
Element root = document.getRootElement(); Element conn = root.element("connectionStrings"); String val = conn.attribute("name").getValue();
System.out.println(val); List list = conn.elements("add"); for (int i = 0; i < list.size(); i++) {
Element ele = (Element) list.get(i);
System.out.println(ele.attribute("connectionString").getValue());
} ///////// foreach实现
for (Object obj : list) {
Element ele = (Element) obj;
System.out.println(ele.attribute("connectionString").getValue());
} } catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} }

上面是读取xml文件,写入xml文件的代码如下:

import java.io.*;

import org.dom4j.*;
import org.dom4j.io.*; public class App {
public static void main(String[] args) throws IOException {
Document document = DocumentHelper.createDocument();
Element root = DocumentHelper.createElement("configuration");
document.setRootElement(root); Element eleConnectionStrings = root.addElement("connectionStrings");
eleConnectionStrings.addAttribute("name", "zhangsan"); Element eleAdd = eleConnectionStrings.addElement("add");
eleAdd.addAttribute("name", "dbSqlServer"); // 格式化,避免写入文件是一行数据
OutputFormat opf = new OutputFormat();
opf.setNewlines(true);
opf.setIndent(true);
opf.setEncoding("utf-8");//编码格式
opf.setIndent(" ");// 使用4个空格进行缩进, 可以兼容文本编辑器 XMLWriter xmlWriter = new XMLWriter(new FileOutputStream("config.xml"), opf);
xmlWriter.write(document);
// xmlWriter.flush();
xmlWriter.close(); //上面的方法无法完全释放资源 }
}

很久没有接触Java了,最近经理说我们公司将技术转型,由以前的C#转Java,因此回顾一下,特此记录

Java读取xml的更多相关文章

  1. Java读取xml数据

    xml中的代码 <?xml version="1.0" encoding="UTF-8"?> <books id="aaa" ...

  2. java 读取XML文件作为配置文件

    首先,贴上自己的实例: XML文件:NewFile.xml(该文件与src目录同级) <?xml version="1.0" encoding="UTF-8&quo ...

  3. java读取xml文件报“org.xml.sax.SAXParseException: Premature end of file” .

    背景:java读取xml文件,xml文件内容只有“<?xml version="1.0" encoding="UTF-8"?>”一行 java读取该 ...

  4. java读取XML文件的四种方式

    java读取XML文件的四种方式 Xml代码 <?xml version="1.0" encoding="GB2312"?> <RESULT& ...

  5. JAVA读取XML文件并解析获取元素、属性值、子元素信息

    JAVA读取XML文件并解析获取元素.属性值.子元素信息 关键字 XML读取  InputStream   DocumentBuilderFactory   Element     Node 前言 最 ...

  6. java读取 xml文件

    java读取xml文件的四种方法  转自https://www.cnblogs.com/lingyao/p/5708929.html Xml代码 1 <?xml version="1. ...

  7. JAVA读取XML文件数据

    XML文档内容如下: <?xml version="1.0" encoding="UTF-8"?> <root> <field t ...

  8. JAVA读取XML并打印

    在G盘下新建XML文档:person.xml,XML代码: <?xml version="1.0" encoding="utf-8"?> <s ...

  9. java读取XML文件,及封装XML字符串

    package com.yyl.text; import java.io.FileInputStream; import java.util.ArrayList; import org.junit.T ...

随机推荐

  1. 76. Minimum Window Substring(hard 双指针)

    Given a string S and a string T, find the minimum window in S which will contain all the characters ...

  2. MyBatis学习笔记(五)——实现关联表查询

    转自孤傲苍狼的博客:http://www.cnblogs.com/xdp-gacl/p/4264440.html 一.一对一关联 1.1.提出需求 根据班级id查询班级信息(带老师的信息) 1.2.创 ...

  3. C# Http方式下载文件到本地类改进版

    在上文基础上增加了远程文件是否存在和本地文件是否存在的判断. 类代码: using System; using System.Collections.Generic; using System.Lin ...

  4. web前端----css属性

    一.文本 1.文本颜色:color 颜色属性被用来设置文字的颜色. 颜色是通过CSS最经常的指定: 十六进制值 - 如: #FF0000 一个RGB值 - 如: RGB(255,0,0) 颜色的名称 ...

  5. Mysql 更改编码方式

    Mysql 更改编码方式 --查看编码方式 show variables like 'char%'; --设置编码方式 set character_set_server=utf8;

  6. Linux下tomcat的shutdown命令可以关闭服务但是杀不死进程

    Linux下tomcat的shutdown命令可以关闭服务但是杀不死进程 原因: 一般造成这种原因是因为项目中有非守护线程的存在: 解决方案: 一.从Tomcat上解决 方案1:(推荐的方案:因为一台 ...

  7. luogu 1004 方格取数

    题目描述 设有 $N \times N$ 的方格图 $(N \le 9)$ ,我们将其中的某些方格中填入正整数,而其他的方格中则放入数字 $0$ .如下图所示(见样例): A 0 0 0 0 0 0 ...

  8. 织梦dedecms多选checkbox字段值独立输出样式调用方法

    在做织梦网站时发现dedecms的自建字段的checkboxcook输出是一段证不能把每个标签分开写样式,在晚上查了好多没页没有好的,最终用中方式来做会好 {dede:field.fyuantese ...

  9. 分析redis key大小的几种方法

    当redis被用作缓存时,有时我们希望了解key的大小分布,或者想知道哪些key占的空间比较大.本文提供了几种方法. 一. bigKeys 这是redis-cli自带的一个命令.对整个redis进行扫 ...

  10. 如何解决Visual Studio2010 编译时提示系统找不到指定文件问题

    前一段时间,开始使用vs2010编写程序,可是在编译的时候总是报错,提示系统找不到指定文件,导致无法正常运行程序,花了好久时间终于找到原因解决,是因为常规的输出目录 要与链接的常规的输出文件要相对应. ...