c# - 将 KeyValuePair 列表的内容写入文本文件 - 有一个问题

标签 c# generics list key-value

将列表中可用的“值”写入文本文件的最佳方式是什么?问题是文本文件的名称应该由 key 确定。

例如,我设法构建了一个这样的列表:

["Animal", "Lion|Roars"]
["Animal", "Tiger|Roars"]
["Bird",   "Eagle|Flies"]
["Bird",   "Parrot|Mimics"]

我们需要根据以上内容编写两个文件:Animal.txtBird.txt,每个文件只包含它们各自的值。

执行此操作的有效方法是什么?

感谢 SOF 社区。

最佳答案

我会使用 LINQ 进行分组,然后将每个组一次写入一个文件。 像这样简单的事情应该做到:

    static void WriteFiles(IEnumerable<KeyValuePair<string, string>> data)
    {
        foreach (var group in from kvp in data
                              group kvp.Value by kvp.Key)
            File.WriteAllLines(group.Key + ".txt", group);
    }

关于c# - 将 KeyValuePair 列表的内容写入文本文件 - 有一个问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5250020/

相关文章:

generics - 用 Jackson 序列化 Map<Date, String>

java - Java 泛型的问题

list - 理解 Prolog 的空列表

python - 为什么我只从列表中得到一个项目

c# - C#中Spliterator的等价物是什么?

c# - 具有不同 XAxis (DateTime) 区域的 Infragistics 多个系列

c# - .NET 中的 SetForegroundWindow 问题

c# - 创建复杂查询以执行存储在列中的查询?

c# - 在此 .NET 代码中遇到泛型问题

c++ - 在 C++ 中插入列表时没有匹配函数错误