java中读取properties文件,并将文件内容转换成map并返回

package test;


import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Properties;
import java.util.Set;


/**
 * 读取properties文件的内容,并返回map
 * 
 * @author 1
 * 
 */
public class ReadProperties {
/**
* 文件路径
*/
private String filePath;


public ReadProperties() {
// TODO Auto-generated constructor stub
}


public ReadProperties(String path) {
this.filePath = path;
}


public static void main(String[] args) {
ReadProperties rp = new ReadProperties(
"E:\\workspace\\psf\\test\\config\\config.properties");
Map<String, String> map = new HashMap<String, String>();
System.out.println(map);
}


/**
* 获取properties文件中的内容,并返回map

* @return
*/
public Map<String, String> getProperties() {
Map<String, String> map = new HashMap<String, String>();
InputStream in = null;
Properties p = null;
try {
in = new BufferedInputStream(new FileInputStream(new File(
this.filePath)));
p.load(in);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Set<Entry<Object, Object>> entrySet = p.entrySet();
for (Entry<Object, Object> entry : entrySet) {
map.put((String) entry.getKey(), (String) entry.getValue());
}
return map;
}


public String getFilePath() {
return filePath;
}


public void setFilePath(String filePath) {
this.filePath = filePath;
}


}
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java,我们可以使用java.util.Properties读取.properties文件,并将其转换为Map对象。 首先,我们需要创建一个Properties对象,并通过load()方法加载.properties文件。然后,我们可以通过getProperty(key)方法获取每个键对应的值,并将其存储在Map对象。 下面是一个示例代码: ```java import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.HashMap; import java.util.Map; import java.util.Properties; public class ReadPropertiesToMapExample { public static void main(String[] args) { // 创建一个Map对象,用于存储.properties文件的键值对 Map<String, String> propertiesMap = new HashMap<>(); // 读取.properties文件并将其转换为Map try (InputStream input = new FileInputStream("example.properties")) { Properties properties = new Properties(); properties.load(input); // 将.properties文件的键值对存储在Map对象 for (String key : properties.stringPropertyNames()) { String value = properties.getProperty(key); propertiesMap.put(key, value); } } catch (IOException e) { e.printStackTrace(); } // 输出Map对象的内容 for (Map.Entry<String, String> entry : propertiesMap.entrySet()) { System.out.println(entry.getKey() + "=" + entry.getValue()); } } } ``` 以上代码,我们通过创建一个Map对象propertiesMap来存储.properties文件的键值对。然后,我们使用Properties类的load()方法来加载.properties文件。接下来,我们使用getProperty(key)方法获取每个键对应的值,并将其存储在propertiesMap。最后,我们通过遍历Map对象来输出其内容。 需要注意的是,示例代码的"example.properties"为需要读取的.properties文件路径,请根据实际情况进行替换。 希望以上回答能够解决你的问题,如果还有其他疑问,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值