2

C# 新手试图弄清楚如何从现有的 .txt 文件创建数组。调用文本文件“文件名”文件包含由逗号分隔的元素对,例如:

AGT, H

ATT,米

TAA,J

AAG,我

最终我需要在字典中再次将它们配对,但我认为我不需要使用 2D 数组,除非它更容易。
有什么建议么???欢迎所有想法和建议,因为我是 C# 新手并且需要非常快速地学习。

谢谢!!

4

4 回答 4

7

用于从列string.Split中获取 a 。string[]然后你可以通过 IEnumerable<string[]>这种方式得到:

var lines = File.ReadLines(l => l.Split(','));

如果您想将查询具体化为一个集合,您可以使用ToListor ToArray

List<string[]> lineList = lines.ToList();

如果你想创建一个Dictionary<string, string>代替(不允许重复的键):

var dict = lines.Select(l => l.Split(','))
               .ToDictionary(split => split.First(), split => split.Last());
于 2013-09-02T22:19:35.253 回答
1

您可以读取这些行,将每行拆分为一个包含两个项目的数组,然后从中填充一个字典:

Dictionary<string, string> dict =
  File.ReadLines(filename)
  .Select(l => l.Split(new string[]{", "}, StringSplitOptions.None))
  .ToDictionary(p => p[0], p => p[1]);
于 2013-09-02T22:24:02.587 回答
0

您可以使用一些 LINQ 将文件读入字典:)

File.ReadLines(path)
    .Select(l => l.Split(','))
    .ToDictionary(k => k[0], v => v[1]);
于 2013-09-02T22:23:03.557 回答
0

使用ReadAllLines(String).

参考:http: //msdn.microsoft.com/en-us/library/s2tte0y1.aspx

于 2013-09-02T22:26:34.000 回答