Java读取xml
首先将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的更多相关文章
- Java读取xml数据
xml中的代码 <?xml version="1.0" encoding="UTF-8"?> <books id="aaa" ...
- java 读取XML文件作为配置文件
首先,贴上自己的实例: XML文件:NewFile.xml(该文件与src目录同级) <?xml version="1.0" encoding="UTF-8&quo ...
- java读取xml文件报“org.xml.sax.SAXParseException: Premature end of file” .
背景:java读取xml文件,xml文件内容只有“<?xml version="1.0" encoding="UTF-8"?>”一行 java读取该 ...
- java读取XML文件的四种方式
java读取XML文件的四种方式 Xml代码 <?xml version="1.0" encoding="GB2312"?> <RESULT& ...
- JAVA读取XML文件并解析获取元素、属性值、子元素信息
JAVA读取XML文件并解析获取元素.属性值.子元素信息 关键字 XML读取 InputStream DocumentBuilderFactory Element Node 前言 最 ...
- java读取 xml文件
java读取xml文件的四种方法 转自https://www.cnblogs.com/lingyao/p/5708929.html Xml代码 1 <?xml version="1. ...
- JAVA读取XML文件数据
XML文档内容如下: <?xml version="1.0" encoding="UTF-8"?> <root> <field t ...
- JAVA读取XML并打印
在G盘下新建XML文档:person.xml,XML代码: <?xml version="1.0" encoding="utf-8"?> <s ...
- java读取XML文件,及封装XML字符串
package com.yyl.text; import java.io.FileInputStream; import java.util.ArrayList; import org.junit.T ...
随机推荐
- React组件,React和生命周期
笔记,具体可以看看这个博客: https://segmentfault.com/a/1190000004168886?utm_source=tag-newest react 的jsx document ...
- 持续集成之二:搭建SVN服务器(subversion)
安装环境 Red Hat Enterprise Linux Server release 7.3 (Maipo) jdk1.7.0_80 subversion-1.10.3.tar.gz apr-1. ...
- Python正则处理多行日志一例(可配置化)
正则表达式基础知识请参阅<正则表达式基础知识>,本文使用正则表达式来匹配多行日志并从中解析出相应的信息. 假设现在有这样的SQL日志: SELECT * FROM open_app WHE ...
- Spring,Struts2,MyBatis,Activiti,Maven,H2,Tomcat集成(一)——Maven,Tomcat,Spring集成
1. 创建Maven Web工程 (1) 磁盘上创建Maven工程所需要的文件夹结构如下: (2) 在与src同级目录中创建pom.xml文件: <project xm ...
- 安装rocketmq-console
一.alibaba版本 使用rocketmq命令查看集群状态,查看topic信息时比较麻烦,而且不直观,这个时候可以使用一些web页面来管理rocketmq. 以前曾使用过一个老版本的工具,适用于al ...
- linux rsync同步工具
linux rsync同步工具 1.rsync介绍rsync是一款开源的.快速的.多功能的.可实现全量及增量的本地或远程数据同步备份的优秀工具.rsync软件适用于unix/linux/windows ...
- (五)使用GitHub的前期准备
创建账户 创建账号成功后将得到一个个人的公开页面URL:https://github.com/xkfx. 设置头像 设置SSH Key SSH 为 Secure Shell 的缩写. from bai ...
- c++第五天:默认初始化
1.算数类型.(整型和浮点型) 类型决定了数据所占的比特数以及该如何解释这些比特的内容. 练习2.1... 各种类型在计算机中所占的比特数不同,解释方法不同.有符号要花费一个比特存储符号,最大正值要比 ...
- 20145307陈俊达《网络对抗》Exp5 MSF基础应用
20145307陈俊达<网络对抗>Exp5 MSF基础应用 基础问题回答 用自己的话解释什么是exploit,payload,encode? exploit就相当于是载具,各式各样的漏洞在 ...
- 20145319 《网络渗透》web基础
20145319 <网络渗透>web基础 实验要求 掌握网页编程的基本知识 html语法 javascript php 前端,后台,数据库之间如何建立连接 掌握数据库的使用 mysql的启 ...