首页 > 技术文章 > Java实现读取Propertise文件用代码转换成xml文件

amazingbook 2017-10-18 21:22 原文

1.导入dom4j的jar包

下载地址:dom4j-1.6.1.jar

2.实现代码

 1 package test;
 2 
 3 import java.io.BufferedInputStream;
 4 import java.io.File;
 5 import java.io.FileInputStream;
 6 import java.io.FileOutputStream;
 7 import java.io.InputStream;
 8 import java.util.Iterator;
 9 import java.util.Properties;
10 
11 import org.dom4j.Document;
12 import org.dom4j.Element;
13 import org.dom4j.io.OutputFormat;
14 import org.dom4j.io.XMLWriter;
15 import org.dom4j.DocumentHelper;
16 
17 public class PropertiseToXml {
18     public static void main(String[] args) {
19         Properties prop = new Properties();
20         Document doucment;
21         try {
22             // 读取属性文件a.properties
23             InputStream in = new BufferedInputStream(new FileInputStream("F:\\a.properties"));
24             prop.load(in); /// 加载属性列表
25             Iterator<String> it = prop.stringPropertyNames().iterator();
26             // 创建文档并设置文档的根元素节点
27             Element root = DocumentHelper.createElement("properties");
28             doucment = DocumentHelper.createDocument(root);
29             while (it.hasNext()) {
30                 String key = it.next();
31                 // 子节点1
32                 Element element1 = root.addElement("propertie");
33                 element1.addAttribute("id", key);
34                 // 子节点2
35                 Element element2 = root.addElement("content");
36                 element2.addText(prop.getProperty(key));
37             }
38             in.close();
39             // 实例化输出格式对象
40             OutputFormat format = OutputFormat.createPrettyPrint();
41             // 设置输出编码
42             format.setEncoding("UTF-8");
43             // 创建需要写入的File对象
44             File file = new File("F:" + File.separator + "books.xml");
45             // 生成XMLWriter对象,构造函数中的参数为需要输出的文件流和格式
46             XMLWriter writer = new XMLWriter(new FileOutputStream(file), format);
47             // 开始写入,write方法中包含上面创建的Document对象
48             writer.write(doucment);
49             writer.close();
50         } catch (Exception e) {
51             System.out.println(e);
52         }
53     }
54 
55 }

 

推荐阅读