Properties可以读取和写入xxx.props文件,写可以读取和写入xml文件,下面给出实例:
package com.test02;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.PrintStream;
import java.util.Properties;
/**
* 测试Properties类的读写properties和xml文件
*/
public class TestProperties {
/**
* 测试读取properties文件
* 时间:2015-4-10 下午2:01:08
* @throws Exception
*/
public void testReadProperties() throws Exception {
Properties prop = new Properties();
FileInputStream fis = new FileInputStream(new File("D:\\00_tools\\00_javatest\\properties.txt"));
prop.load(fis); //读properties
String gender = prop.getProperty("gender");
gender = new String(gender.getBytes("ISO-8859-1"),"GBK"); //解决读乱码
System.out.println(gender);
prop.list(System.out);
}
/**
* 测试写入properties文件
* 时间:2015-4-10 下午2:16:04
*/
public void testWriteProperties() {
Properties prop = new Properties();
prop.setProperty("id", "110");
prop.setProperty("itcode", "zhangsan");
prop.setProperty("district", "苏州街");
try {
PrintStream ps = new PrintStream(new File("D:\\00_tools\\00_javatest\\testWriteProperties.txt"));
prop.list(ps); //写properties
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 测试读取xml文件
* 时间:2015-4-10 下午3:02:31
* @throws Exception
*/
public void testReadXml() throws Exception{
Properties prop = new Properties();
ByteArrayInputStream bais = new ByteArrayInputStream(xmlStr.getBytes());
prop.loadFromXML(bais); //读xml
prop.list(System.out);
}
/**
* 测试写入xml文件
* 时间:2015-4-10 下午3:07:06
*/
public void testWriteXml() {
Properties prop = new Properties();
prop.setProperty("id", "119");
prop.setProperty("name", "李四");
try {
PrintStream ps = new PrintStream(new File("D:\\00_tools\\00_javatest\\testWriteXml.xml"));
prop.storeToXML(ps, "test"); //写xml
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) throws Exception{
TestProperties test = new TestProperties();
System.out.println("--------- 基于properties文件的读 -----------");
test.testReadProperties();
System.out.println("--------- 基于properties文件的写 -----------");
test.testWriteProperties();
System.out.println("写入成功");
System.out.println("--------- 基于xml文件的读 -----------");
test.testReadXml();
System.out.println("--------- 基于xml文件的写 -----------");
test.testWriteXml();
}
private static String xmlStr =
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +
"<!DOCTYPE properties SYSTEM \"http://java.sun.com/dtd/properties.dtd\">" +
"<properties>" +
"<comment>Hi</comment>" +
"<entry key=\"foo\">bar</entry>" +
"<entry key=\"fu\">baz</entry>" +
"</properties>";
}
本文介绍如何使用Java的Properties类来读取和写入.properties及.xml文件。通过具体实例展示了加载文件、解决乱码问题、写入文件等关键步骤。
2465

被折叠的 条评论
为什么被折叠?



