dom4j读取xml文件

喜欢ヅ旅行 2023-06-02 05:25 142阅读 0赞

主要使用dom4j的SAXReader

1、pom引入dom4j

ContractedBlock.gif ExpandedBlockStart.gif

  1. <dependency>
  2. <groupId>dom4j</groupId>
  3. <artifactId>dom4j</artifactId>
  4. <version>1.6.1</version>
  5. </dependency>

2、测试的xml文件

ContractedBlock.gif ExpandedBlockStart.gif

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <bookMarks>
  3. <bookMark>
  4. <name>Unix时间戳</name>
  5. <url>http://tools.sharejs.com/unixtime.html</url>
  6. </bookMark>
  7. <bookMark>
  8. <name>图片Base64编码</name>
  9. <url>http://www.bejson.com/ui/image2base64/</url>
  10. </bookMark>
  11. </bookMarks>

3、读取xml内容的功能代码

ContractedBlock.gif ExpandedBlockStart.gif

  1. public static Map<String, String> getElements(String file) throws DocumentException{
  2. List<Element> elements;
  3. Map<String,String> map = new HashMap<>();
  4. Document document = DocumentHelper.createDocument();
  5. SAXReader saxReader = new SAXReader();
  6. document = saxReader.read(new File(file));
  7. elements = document.getRootElement().elements();
  8. for(Element element:elements){
  9. map.put(element.elementText("name"), element.elementText("url"));
  10. }
  11. return map;
  12. }

4、测试代码

ContractedBlock.gif ExpandedBlockStart.gif

  1. public static void main(String[] args){
  2. Map<String, String> bmarks = new HashMap<>();
  3. try {
  4. bmarks = MyXmlParser.getElements("bookmark.xml");
  5. for (Map.Entry<String, String> entry: bmarks.entrySet()) {
  6. System.out.println(entry.getKey() + " : " + entry.getValue());
  7. }
  8. } catch (DocumentException e) {
  9. // TODO Auto-generated catch block
  10. e.printStackTrace();
  11. }
  12. }

输出为:

图片Base64编码 : http://www.bejson.com/ui/image2base64/
可视化布局 : http://www.bootcss.com/p/layoutit/

转载于:https://www.cnblogs.com/dannyyao/p/6821973.html

发表评论

表情:
评论列表 (有 0 条评论,142人围观)

还没有评论,来说两句吧...

相关阅读