gpt4 book ai didi

c# - 如何将多行读到同一行?

转载 作者:行者123 更新时间:2023-11-30 13:26:49 24 4
gpt4 key购买 nike

好吧,这个标题并不是最好的。但这是我的问题:

我制作了一个小程序,当外部程序发生特定事件时,它会将一些名称和一个整数写入 .txt 文档。

事情是一个名字可以在文档中出现在几行中,所以我想总结每个特定人的整数,以便我得到他/她的总点数,然后对其进行排序。

例如:

原行:

Aaaa Aaa 5
Bbbb Bbb 7
Cccc Ccc 2
Aaaa Aaa 4
Cccc Ccc 4
Bbbb Bbb 1
Dddd Ddd 1

我想要的输出:

1. Aaaa Aaa 9
2. Bbbb Bbb 8
3. Cccc Ccc 6
4. Dddd Ddd 1

有没有办法在 C# 中做到这一点?我试图阅读文件中的每一行并搜索一个人的名字。但这并没有真正帮助,我不知道如何解决这个问题。有什么建议吗?

最佳答案

显然,文本在某种程度上是您用来汇总数字的关键字,那么为什么不使用 Dictionary<string, int> 呢?先总结后写?

例子:

Dictionary<string, int> sums = new Dictionary<string, int>();

...

if (sums.ContainsKey(theNewString))
sums[theNewString] += theNewNumber;
else
sums[theNewString] = theNewNumber;

当你知道你已经完成了,写这个文件。您也可以在每次更新字典后重新写入该文件,但请记住,如果您不清除它,字典会越来越大。

另外:如果程序重新启动,这将不起作用,除非您在程序每次启动时都创建一个新文件。否则,当程序开始继续求和时,您必须将现有文件读入字典。

关于c# - 如何将多行读到同一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17084558/

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