You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将properties文件中的键值对存储到Map结构中

读取properties配置文件存入哈希表(HashMap)的实现方法

完全可以实现,不同编程语言都有成熟的实现方案,下面给出两种主流开发场景的示例,其他语言可以参考通用逻辑自行实现:

Java 实现

Java标准库自带java.util.Properties类,本身就支持properties文件的解析,且该类继承自Map体系的Hashtable,可以很方便转成HashMap:

import java.io.FileInputStream;
import java.io.IOException;
import java.util.HashMap;
import java.util.Properties;

public class PropertiesToHashMap {
    public static void main(String[] args) throws IOException {
        Properties properties = new Properties();
        // 加载指定路径的properties文件,会自动跳过空行和#开头的注释
        properties.load(new FileInputStream("替换为你的配置文件实际路径"));
        HashMap<String, String> configMap = new HashMap<>();
        // 遍历所有属性存入HashMap
        for (String key : properties.stringPropertyNames()) {
            configMap.put(key, properties.getProperty(key));
        }
    }
}

如果配置文件包含中文,需要使用load(InputStreamReader)方法指定UTF-8编码,避免出现乱码

Python 实现

Python的字典(dict)本身就是哈希表实现,功能和HashMap一致,不需要引入第三方依赖即可实现:

def load_properties_to_map(file_path: str) -> dict:
    config_map = {}
    with open(file_path, 'r', encoding='utf-8') as f:
        for line in f:
            line = line.strip()
            # 跳过空行和#开头的注释行
            if not line or line.startswith('#'):
                continue
            # 仅拆分第一个等号,避免value中包含等号时拆分错误
            key, value = line.split('=', 1)
            config_map[key.strip()] = value.strip()
    return config_map

# 调用示例
my_config = load_properties_to_map("替换为你的配置文件实际路径")

通用实现逻辑(所有语言通用)

如果使用其他编程语言,按照以下逻辑实现即可:

  • 逐行读取配置文件内容
  • 过滤掉空行和#开头的注释行
  • 对每一行仅拆分第一个出现的=,前后去除空格后分别作为键和值
  • 将键值对存入哈希表即可

内容的提问来源于stack exchange,提问作者Sudhanshu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 21:06:05