gpt4 book ai didi

c# - 将文本文件不重复地读入字典

转载 作者:太空狗 更新时间:2023-10-29 22:26:24 25 4
gpt4 key购买 nike

我正在使用简短的 Linq 表达式将文本文件读入字典

string[] lines = File.ReadAllLines(path);
var dictionary = lines.Select(line => line.Split(';')).ToDictionary(keyValue => keyValue[0], bits => bits[1]);

只要我的文本文件中没有重复的键,它就可以正常工作。有没有一种无需走很长的路并遍历 lines[] 数组即可过滤这些内容的捷径?

最佳答案

可以先使用GroupBy:

var dictionary = lines.Select(line => line.Split(';'))
.GroupBy(arr => arr[0])
.ToDictionary(g => g.Key, g => g.First()[1]);

这会选择每个副本的第一个元素,如果不需要,您必须相应地更改 g.First。例如,您可以用逗号分隔值:

var dictionary = lines.Select(line => line.Split(';'))
.GroupBy(arr => arr[0])
.ToDictionary(g => g.Key, g => string.Join(",", g.Select(arr=> arr[1])));

关于c# - 将文本文件不重复地读入字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23779176/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com