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

如何将/proc/meminfo文本文件转换为指定格式的HashMap?

问题:将/proc/meminfo内容转换为指定格式的HashMap

目标

我需要把/proc/meminfo的内容转换成一个HashMap,格式如下:

{   
"MemTotal":       "16256760 kB",
"MemFree":          "462276 kB",
"MemAvailable":   "10108672 kB",
"Buffers":         "1432356 kB",
"Cached":          "7138456 kB",
...
}

/proc/meminfo的原始输出示例:

cat /proc/meminfo
MemTotal:       16256760 kB
MemFree:         2685512 kB
MemAvailable:   11105752 kB
Buffers:          774076 kB
Cached:          7722948 kB
...

要求HashMap的条目数量和文件的行数完全一致。

当前情况

我现在的代码生成的HashMap,键是手动定义的Entry1、Entry2这类字符串,值是文件里的整行内容:

fn read_file_to_hashmap(path: impl AsRef<Path>) -> HashMap<String, String> {
let reader = BufReader::new(File::open(path).expect("error here"));

let hashmap = [
    "Entry1".to_string(),
    "Entry2".to_string(),
    "Entry3".to_string(),
    "Entry4".to_string(),
    "Entry5".to_string(),
]
.into_iter()
.zip(reader.lines().map(Result::unwrap))
.collect::<HashMap<_, _>>();
return hashmap;
}

println!输出的结果如下:

{
"Entry1": "MemTotal:       16256760 kB",
"Entry5": "Cached:          7138456 kB",
"Entry2": "MemFree:          462276 kB",
"Entry4": "Buffers:         1432356 kB",
"Entry3": "MemAvailable:   10108672 kB",
}

请问要怎么修改代码才能实现我想要的目标?


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 16:35:22