举个XML外部输入变量的例子
时间: 2023-12-16 09:04:56 浏览: 41
当使用XML进行外部输入变量时,可以使用占位符、参数实体或外部实体引用等方法。以下是一个使用属性占位符的示例:
XML文件(example.xml):
```
<root>
<name>${name}</name>
<age>${age}</age>
</root>
```
外部配置文件(config.properties):
```
name=John Doe
age=30
```
Java代码中读取XML文件并替换变量:
```java
import java.io.FileInputStream;
import java.util.Properties;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
public class XMLVariableExample {
public static void main(String[] args) {
try {
// 读取外部配置文件
Properties properties = new Properties();
FileInputStream input = new FileInputStream("config.properties");
properties.load(input);
// 读取XML文件
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(new FileInputStream("example.xml"));
// 替换变量值
NodeList nodeList = document.getElementsByTagName("name");
Element nameElement = (Element) nodeList.item(0);
nameElement.setTextContent(properties.getProperty("name"));
nodeList = document.getElementsByTagName("age");
Element ageElement = (Element) nodeList.item(0);
ageElement.setTextContent(properties.getProperty("age"));
// 输出替换后的XML内容
System.out.println(document.getDocumentElement().getTextContent());
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
在此示例中,通过读取外部配置文件(config.properties)中的变量值,并使用属性占位符`${name}`和`${age}`在XML文件(example.xml)中进行替换。最后,输出替换后的XML内容。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)