原文: https://howtodoinjava.com/xml/convert-xml-to-properties/

Java 示例从 XML 文件创建.properties文件。 此代码可用于从 XML 文件读取属性键值,以在应用代码中使用。

XML 示例的属性

要将 XML 文件转换为属性文件,最好的方法是使用java.util.Properties类。 流程是:

  1. 使用Properties.loadFromXML())方法将 XML 文件加载到java.util.Properties类对象中。
  2. 使用Properties.store())方法将内容写为属性。
  1. package com.howtodoinjava.demo;
  2. import java.io.FileInputStream;
  3. import java.io.FileOutputStream;
  4. import java.io.IOException;
  5. import java.io.InputStream;
  6. import java.io.OutputStream;
  7. import java.util.InvalidPropertiesFormatException;
  8. import java.util.Properties;
  9. public class XMLToProperties
  10. {
  11. public static void main(String[] args) throws InvalidPropertiesFormatException, IOException
  12. {
  13. String outPropertiesFile = "application.properties";
  14. String inXmlFile = "applicationProperties.xml";
  15. InputStream inStream = new FileInputStream(inXmlFile); //Input XML File
  16. OutputStream outStream = new FileOutputStream(outPropertiesFile); //Output properties File
  17. Properties props = new Properties();
  18. //Load XML file
  19. props.loadFromXML(inStream);
  20. //Store to properties file
  21. props.store(outStream, "Converted from applicationProperties.xml");
  22. //Use properties in code
  23. System.out.println(props.get("input.dir")); //Prints 'c:/temp/input'
  24. }
  25. }

输入 XML 文件

  1. <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  2. <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
  3. <properties>
  4. <comment>application.properties</comment>
  5. <entry key="input.dir">c:/temp/input</entry>
  6. <entry key="spring.batch.job.enabled">false</entry>
  7. <entry key="spring.main.banner-mode">off</entry>
  8. </properties>

输出属性文件

  1. #Converted from applicationProperties.xml
  2. #Mon Jul 23 18:15:00 IST 2018
  3. spring.batch.job.enabled=false
  4. input.dir=c\:/temp/input
  5. spring.main.banner-mode=off

将我的问题放在评论部分。

学习愉快!