一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - java 讀取本地文件實例詳解

java 讀取本地文件實例詳解

2020-09-23 14:05Java之家 Java教程

這篇文章主要介紹了java 讀取本地文件實例詳解的相關資料,需要的朋友可以參考下

java 讀取本地文件實例詳解

用javax.xml、w3c解析

實例代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
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解析

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
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();
    }
  }
}

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

原文鏈接:http://blog.csdn.net/jiyingying_up/article/details/69396501

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲天堂一区二区在线观看 | 莫莉瑞典1977k| 精品伊人 | 精品一区二区三区在线视频观看 | 公交车揉捏大乳呻吟喘娇 | 母乳在线播放 | 亚洲高清在线视频 | 国产成人精品高清不卡在线 | 含羞草传媒一天免费看下 | asspics大尿chinese| 99热线| chinesexxxxhd人妖| 天天综合五月天 | 麻豆视频免费在线观看 | 黑人艹| 99久久国产综合精品麻豆 | 男人女人日皮视频 | 久久精品麻豆国产天美传媒果冻 | 91韩国女主播 | 国产伊人久久 | 5g996未满十八 | 国产成人精品日本亚洲网址 | 亚洲国产免费 | 韩国三级动漫 | 免费在线视频成人 | 69萝莉| 狠狠涩 | 99欧美精品 | 236宅宅2021最新理论 | 12345国产精品高清在线 | 免看一级a一片成人123 | 免费看国产精品麻豆 | 国产 日韩 一区 | 亚洲乱码一区二区三区国产精品 | 2020国产精品亚洲综合网 | 青视频在线 | 欧美日韩高清不卡一区二区三区 | 国产japanese孕妇孕交 | 日本视频在线免费看 | a毛片久久免费观看 | 出a级黑粗大硬长爽猛视频 吃胸膜奶视频456 |