java读写xml和properties配置文件and Properties支持中文(转)
来源:互联网 发布:php后台 编辑:程序博客网 时间:2024/06/08 09:29
【注:内容有点长,但解说得很详细清楚】
在java.util 包下面有一个类 Properties,该类主要用于读取以项目的配置文件(以.properties结尾的文件和xml文件)。
Properties的构造函数有两个,一个不带参数,一个使用一个Properties对象作为参数。
使用Properties读取.properties文件
test.properties文件如下:
- #测试环境配置:平台路径配置
- jstrd_home=D:/TMS2006/webapp/tms2006/WEB-INF/
- dbPort = localhost
- databaseName = mydb
- dbUserName = root
- dbPassword = root
- # 以下为数据库表信息
- dbTable = mytable
- # 以下为服务器信息
- ip = 192.168.0.9
读取test.properties的方法如下:
- impor java.io.*;
- import java.util.*;
- public class ReadProperties{
- public static void main(String[] args) {
- File pFile = new File("e://test.properties"); // properties文件放在e盘下(windows)
- FileInputStream pInStream=null;
- try {
- pInStream = new FileInputStream(pFile );
- }
- catch (FileNotFoundException e) {
- e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
- }
- Properties p = new Properties();
- try {
- p .load(pInStream ); //Properties 对象已生成,包括文件中的数据
- }
- catch (IOException e) {
- e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
- }
- Enumeration enu = p.propertyNames(); //取出所有的key
- //输出--1
- p.list(System.out) ; //System.out可以改为其他的输出流(包括可以输出到文件)
- //输出--2
- while( enu .hasMoreElements()){
- System.out.print("key="+enu.nextElement());
- System.out.print("value="+p.getProperty((String)enu .nextElement()));
- }
- }
- }
读取xml格式的配置文件
test.xml文件ruxi
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
- <properties>
- <entry key="koo">bar</entry>
- <entry key="fu">baz</entry>
- </properties>
读取xml的方法
- import java.io.IOException;
- import java.io.File;
- import java.io.FileInputStream;
- import java.util.Properties;
- public class Test {
- public static void main(String[] args) {
- File pFile = new File("e://test.xml"); // properties文件放在e盘下(windows)
- FileInputStream pInStream = null;
- try {
- pInStream = new FileInputStream(pFile);
- Properties p = new Properties();
- p.loadFromXML(pInStream);
- p.list(System.out);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
通过list 方法将Properties写入Properties文件
- import java.io.IOException;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.PrintStream;
- import java.util.Properties;
- public class Test {
- public static void main(String[] args) {
- Properties p = new Properties();
- p.setProperty("id","dean");
- p.setProperty("password","123456");
- try{
- PrintStream fW = new PrintStream(new File("e://test1.properties"));
- p.list(fW );
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
保存为xml
- import java.io.IOException;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.PrintStream;
- import java.util.Properties;
- public class Test {
- public static void main(String[] args) {
- Properties p = new Properties();
- p.setProperty("id","dean");
- p.setProperty("password","123456");
- try{
- PrintStream fW = new PrintStream(new File("e://test1.xml"));
- p.storeToXML(fW,"test");
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
以上转自百度文库:http://wenku.baidu.com/view/36557f69a45177232f60a27b.html
以下转自:http://liudaoru.javaeye.com/blog/340367
将文件改为UTF_8编码格式, 用Edit 编辑器打开,就可以看见文件内容显示汉字。
在读取的时候,还需要转换才能读取来汉字字符串,读取方法:
String path = new String(com.GetKey("sql").getBytes("ISO-8859-1"), "UTF-8");
其中方法(GetKey) 是获取配置文件字符串的
- java读写xml和properties配置文件and Properties支持中文(转)
- java读写xml和properties配置文件and Properties支持中文(转)
- properties配置文件支持中文
- Java 读写Properties配置文件
- Java 读写Properties配置文件
- Java读写properties配置文件
- java读写properties配置文件
- Java 读写Properties配置文件
- Java读写Properties配置文件
- Java 读写Properties配置文件
- Java 读写Properties配置文件
- Java 读写Properties配置文件
- Java 读写Properties配置文件
- Java 配置文件读写Properties
- Java 读写Properties配置文件
- Java 读写Properties配置文件
- Java读写配置文件properties
- Java读写properties配置文件
- WCF 4 Step By Step Chapter 5 Note (Authentication in Internet)
- SQL数据类型和C#数据类型间的转换
- 六类qsort排序方法
- touch the sound 让小孩学习了解声音跟物体的关系
- C++ 虚函数表解析
- java读写xml和properties配置文件and Properties支持中文(转)
- 获取请求URL地址
- PL/SQL Devoloper登陆弹出空白框
- vs2005 为函数自动添加注释
- mysql修改端口号要记得my.ini中所有3306都修改掉
- Birt在script中得到session的方法
- 栈的应用之平衡符号
- 虚拟继承
- c:下中了木马 amd.dll 18181.exe boot1.exe如何处理