java 读取本地文件实例详解

用javax.xml、w3c解析

实例代码:

package cn.com.xinli.monitor.utils;

import org.w3c.dom.Document;

import org.w3c.dom.Element;

import javax.xml.parsers.DocumentBuilder;

import javax.xml.parsers.DocumentBuilderFactory;

import java.io.File;

/**

* Created by jiyy on 2017/4/6.

*/

public class ReadXmlTest {

public static void main(String[] args){

Element element = null;

// 可以使用绝对路劲

File f = new File("D:/workspace-idea/monitor-service/src/main/resources/logMonitor.xml");

// documentBuilder为抽象不能直接实例化(将XML文件转换为DOM文件)

DocumentBuilder db = null;

DocumentBuilderFactory dbf = null;

try {

// 返回documentBuilderFactory对象

dbf = DocumentBuilderFactory.newInstance();

// 返回db对象用documentBuilderFatory对象获得返回documentBuildr对象

db = dbf.newDocumentBuilder();

// 得到一个DOM并返回给document对象

Document dt = db.parse(f);

// 得到一个elment根元素

element = dt.getDocumentElement();

// 获得根节点

System.out.println("根元素:" + element.getNodeName());

}catch (Exception e ){

e.printStackTrace();

}

}

}

用dom4j解析

package cn.com.xinli.monitor.test;

import org.apache.commons.io.IOUtils;

import org.dom4j.Document;

import org.dom4j.DocumentException;

import org.dom4j.DocumentHelper;

import java.io.File;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStream;

import java.net.URISyntaxException;

/**

* Created by jiyy on 2017/4/6.

*/

public class ReadFileTest {

public static void main(String[] args){

//方法一:本地绝对路径获取xml文件内容,项目外的路径

String fileUrl = "/D:/workspace-idea/monitor-service/src/main/resources/logMonitor.xml";

InputStream fis = null;

try {

fis = new FileInputStream(new File(fileUrl));

String content = IOUtils.toString(fis,"UTF-8");

Document document = DocumentHelper.parseText(content);

} catch (java.io.IOException e) {

e.printStackTrace();

} catch (DocumentException e) {

e.printStackTrace();

}

//方法二:项目绝对路径是在本class文件所在项目的根目录下找,也就是classes/下

try {

String content2 = IOUtils.toString(ReadFileTest.class.getResourceAsStream("/logMonitor.xml"), "UTF-8");

Document document2 = DocumentHelper.parseText(content2);

} catch (IOException e) {

e.printStackTrace();

}catch (DocumentException e) {

e.printStackTrace();

}

//方法三:相对目录,在本ReadFileTest编译后的.class文件同级目录

try {

String content3 = IOUtils.toString(ReadFileTest.class.getResourceAsStream("logMonitor.xml"), "UTF-8");

Document document3 = DocumentHelper.parseText(content3);

} catch (IOException e) {

e.printStackTrace();

}catch (DocumentException e) {

e.printStackTrace();

}

//方法四:相对目录,在本ReadFileTest编译后的.class文件上级目录的config目录下

try {

String content4 = IOUtils.toString(ReadFileTest.class.getResourceAsStream("../config/logMonitor.xml"), "UTF-8");

Document document4 = DocumentHelper.parseText(content4);

} catch (IOException e) {

e.printStackTrace();

}catch (DocumentException e) {

e.printStackTrace();

}

//方法五:动态获取相对目录

try {

String xmlPath = "logMonitor.xml";

//获取当前类加载的根目录,如:/C:/Program Files/Apache/Tomcat 6.0/webapps/fee/WEB-INF/classes/

String path = ReadFileTest.class.getClassLoader().getResource("").toURI().getPath();

// 把文件读入文件输入流,存入内存中

FileInputStream in = new FileInputStream(new File(path + xmlPath));

String content5 = IOUtils.toString(in,"UTF-8");

Document document5 = DocumentHelper.parseText(content5);

} catch (IOException e) {

e.printStackTrace();

} catch (DocumentException e) {

e.printStackTrace();

}catch (URISyntaxException e) {

e.printStackTrace();

}

}

}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

java 读取本地文件_java 读取本地文件实例详解相关推荐

  1. java语言数据库编程_JAVA语言数据库编程实例详解

    本文主要向大家介绍了JAVA语言数据库编程实例详解,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. DOS命令登录MySQL数据库:mysql -h 127.0.0.1 -u root ...

  2. java list 移除_java 中List删除实例详解

    java 中List删除实例详解 1.循环删除List中的元素 public static void main(String[] args) { List t=new ArrayList(); for ...

  3. java类多例_Java多例设计模式实例详解

    本文实例讲述了Java多例设计模式.分享给大家供大家参考,具体如下: 一.多例设计模式定义 多例设计模式就是存在多个对象实例,供外部应用裯用,比喻数据库连接池. 二.多例模式静态类图 三.多例模式代码 ...

  4. java 输入流可以合并吗_Java 使用IO流实现大文件的分割与合并实例详解

    java 使用IO流实现大文件的分割与合并 文件分割应该算一个比较实用的功能,举例子说明吧比如说:你有一个3G的文件要从一台电脑Copy到另一台电脑, 但是你的存储设备(比如SD卡)只有1G ,这个时 ...

  5. java文件流 m.jb51.net_FasfDFS整合Java实现文件上传下载功能实例详解

    今天使用Java代码实现文件的上传和下载.对此作者提供了Java API支持,下载fastdfs-client-java将源码添加到项目中.或者在Maven项目pom.xml文件中添加依赖 org.c ...

  6. java 获取用户的MAC地址多种方法实例详解

    java 获取用户的MAC地址多种方法实例详解 这篇文章主要介绍了JAVA实现获取用户的MAC地址的多种方法实例,需要的朋友可以参考下 java实现获取用户的MAC地址方法: 方法一:将本机地址与局域 ...

  7. file java详解_Java中File的实例详解

    Java中File的实例详解 File 代表文件或者目录的类 构造函数 File(File parent,String child)---代表了指定父目录下的指定的子文件或者子目录 File(Stri ...

  8. java做jsp问题_java/jsp中 中文问题详解

    java/jsp中 中文问题详解 更新时间:2006年10月13日 00:00:00   作者: 预备知识: 1.字节和unicode Java内核是unicode的,就连class文件也是,但是很多 ...

  9. java中匿名内部类详解_java 中匿名内部类的实例详解

    搜索热词 java 中匿名内部类的实例详解 原来的面貌: class TT extends Test{ void show() { System.out.println(s+"~~~哈哈&q ...

  10. java linkedlist实例_Java Linkedlist原理及实例详解

    这篇文章主要介绍了Java Linkedlist原理及实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 定义:linkedlist属于链表结构 ...

最新文章

  1. 中科大计算机专硕英语,211科班一战394上岸中科大软院专硕2021
  2. python 复制 移动 重命名文件
  3. 黑马java教程是什么_Java教程:揭秘什么是面向接口编程
  4. pandas对象保存到mysql出错提示“BLOB/TEXT column used in key specification without a key length”解决办法
  5. NetBeans Weekly News - Issue # 446 - Jul 20, 2010
  6. SAP 电商云 Spartacus 产品明细页面的 canActivate 执行逻辑 - isUrlProtected
  7. Kogito,ergo规则—第2部分:规则的全面执行模型
  8. LeetCode 1765. 地图中的最高点(BFS)
  9. python中打开文件open_Python中打开文件的方式(With open)
  10. openglshader实现虚拟场景_虚拟演播室设计原则
  11. android 判断照片清晰度_手机如何拍出更清晰的照片?带你走进变焦与对焦的世界...
  12. .NET 框架中的字符串(转自MSDN,关于字符串的详细解说!)
  13. 【Luogu3371】【模板】单源最短路径(SPFA)
  14. Pandas系列(十一)Pandas中concat合并两个dataframe
  15. eclipse如何设置断点断点处运行快捷键
  16. Win10屏保设置详细教程
  17. ERR Target instance replied with error: NOAUTH Authentication required
  18. 能拿驾照就能通过 Elastic 认证考试!
  19. ★★★Win10切换本地账户(最全版本)
  20. redis的GEO实战 (RedisTemplate)

热门文章

  1. ASP.NET MVC3 系列教程 - 如何使项目Debug进MVC3源代码
  2. 用 Keepalived+HAProxy 实现高可用负载均衡的配置方法
  3. Kibana插件sentinl实现邮件报警
  4. CentOS 7.5 安装Zabbix4.4.4和Grafana6.4.4监控系统安装
  5. 企业级容器镜像仓库Harbor的搭建
  6. Zabbix系统端口监控状态
  7. 从当前文件夹以及子文件夹中,批量移动指定名字的文件
  8. 跨域的另一种解决方案——CORS(Cross-Origin Resource Sharing)跨域资源共享
  9. java.lang.IllegalArgumentException 不合法的参数异常
  10. 如何在Linux命令行中替换多个文件中的字符串