java 解析properties文件的两种方法

来源:互联网 发布:深圳网络运营策划公司 编辑:程序博客网 时间:2024/05/17 03:28

1、首先给出我的properties文件,仅作测试用:config.properties
name=huangyz
password=huangyz@neusoft.com

name=huangyz
password=huangyz@neusoft.com

2、给出工程目录结构。

3、下面给出两种方法:

一、采用绝对路径方法,给出源码。

package parse;

import java.util.*;

import java.io.*;

public class ParseProperties {

public static void main(String args[]) {

// 生成文件对象

File pf = new File(System.getProperty(“user.dir”)

  • “/src/config/config.properties”);

// 生成文件输入流

FileInputStream inpf = null;

try {

inpf = new FileInputStream(pf);

} catch (Exception e) {

e.printStackTrace();

}

// 生成properties对象

Properties p = new Properties();

try {

p.load(inpf);

} catch (Exception e) {

e.printStackTrace();

}

// 输出properties文件的内容

System.out.println(“name:” + p.getProperty(“name”));

System.out.println(“password:” + p.getProperty(“password”));

}

}

package parse;

import java.util.*;
import java.io.*;

public class ParseProperties {
public static void main(String args[]) {

    // 生成文件对象    File pf = new File(System.getProperty("user.dir")            + "/src/config/config.properties");    // 生成文件输入流    FileInputStream inpf = null;    try {        inpf = new FileInputStream(pf);    } catch (Exception e) {        e.printStackTrace();    }    // 生成properties对象    Properties p = new Properties();    try {        p.load(inpf);    } catch (Exception e) {        e.printStackTrace();    }    // 输出properties文件的内容    System.out.println("name:" + p.getProperty("name"));    System.out.println("password:" + p.getProperty("password"));}

}

二、采用相对定位方法,给出源码。

package parse;

import java.util.*;

import java.io.*;

public class ParseProperties {

public static void main(String args[]) {

// 生成输入流

InputStream ins=ParseProperties.class.getResourceAsStream(“../config/config.properties”);

// 生成properties对象

Properties p = new Properties();

try {

p.load(ins);

} catch (Exception e) {

e.printStackTrace();

}

// 输出properties文件的内容

System.out.println(“name:” + p.getProperty(“name”));

System.out.println(“password:” + p.getProperty(“password”));

}

}

package parse;

import java.util.*;
import java.io.*;

public class ParseProperties {
public static void main(String args[]) {
// 生成输入流
InputStream ins=ParseProperties.class.getResourceAsStream(“../config/config.properties”);
// 生成properties对象
Properties p = new Properties();
try {
p.load(ins);
} catch (Exception e) {
e.printStackTrace();
}
// 输出properties文件的内容
System.out.println(“name:” + p.getProperty(“name”));
System.out.println(“password:” + p.getProperty(“password”));
}
}

4、推荐采用第二种方法,当然这两种方法都是支持移植的,但是第二种方法更灵活一些!

0 0
原创粉丝点击