多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# Java 将 XML 转换为属性 – 从 XML 文件读取属性 > 原文: [https://howtodoinjava.com/xml/convert-xml-to-properties/](https://howtodoinjava.com/xml/convert-xml-to-properties/) Java 示例**从 XML 文件**创建`.properties`文件。 此代码可用于**从 XML** 文件读取属性键值,以在应用代码中使用。 ## XML 示例的属性 要将 XML 文件转换为属性文件,最好的方法是使用`java.util.Properties`类。 流程是: 1. 使用[`Properties.loadFromXML()`](https://docs.oracle.com/javase/10/docs/api/java/util/Properties.html#loadFromXML(java.io.InputStream))方法将 XML 文件加载到`java.util.Properties`类对象中。 2. 使用[`Properties.store()`](https://docs.oracle.com/javase/10/docs/api/java/util/Properties.html#store(java.io.OutputStream,java.lang.String))方法将内容写为属性。 ```java package com.howtodoinjava.demo; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.util.InvalidPropertiesFormatException; import java.util.Properties; public class XMLToProperties { public static void main(String[] args) throws InvalidPropertiesFormatException, IOException { String outPropertiesFile = "application.properties"; String inXmlFile = "applicationProperties.xml"; InputStream inStream = new FileInputStream(inXmlFile); //Input XML File OutputStream outStream = new FileOutputStream(outPropertiesFile); //Output properties File Properties props = new Properties(); //Load XML file props.loadFromXML(inStream); //Store to properties file props.store(outStream, "Converted from applicationProperties.xml"); //Use properties in code System.out.println(props.get("input.dir")); //Prints 'c:/temp/input' } } ``` #### 输入 XML 文件 ```java <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> <properties> <comment>application.properties</comment> <entry key="input.dir">c:/temp/input</entry> <entry key="spring.batch.job.enabled">false</entry> <entry key="spring.main.banner-mode">off</entry> </properties> ``` #### 输出属性文件 ```java #Converted from applicationProperties.xml #Mon Jul 23 18:15:00 IST 2018 spring.batch.job.enabled=false input.dir=c\:/temp/input spring.main.banner-mode=off ``` 将我的问题放在评论部分。 学习愉快!