C#如何从.txt文件创建数组
C#新手 试图找出如何从现有的.txt文件创建数组。 调用文本文件“filename” 文件包含由coma分隔的元素对,例如: AGT,H ATT,M 泰姬陵 啊,我 最终,我需要在字典中再次将这些数组配对,但我不认为我需要使用2D数组,除非它更简单。C#如何从.txt文件创建数组,c#,arrays,C#,Arrays,C#新手 试图找出如何从现有的.txt文件创建数组。 调用文本文件“filename” 文件包含由coma分隔的元素对,例如: AGT,H ATT,M 泰姬陵 啊,我 最终,我需要在字典中再次将这些数组配对,但我不认为我需要使用2D数组,除非它更简单。 有什么建议吗??? 欢迎所有的想法和建议,因为我是C#新手,需要快速学习 谢谢 用于从列中获取字符串[]。然后您可以通过以下方式获得一个IEnumerable: var lines = File.ReadLines(l => l.Split
有什么建议吗??? 欢迎所有的想法和建议,因为我是C#新手,需要快速学习 谢谢 用于从列中获取
字符串[]
。然后您可以通过以下方式获得一个IEnumerable
:
var lines = File.ReadLines(l => l.Split(','));
如果要具体化对集合的查询,可以使用ToList
或ToArray
:
List<string[]> lineList = lines.ToList();
您可以使用一些LINQ:)将文件读入字典
您可以读取行,将每行拆分为包含两个项目的数组,然后从中填充字典:
Dictionary<string, string> dict =
File.ReadLines(filename)
.Select(l => l.Split(new string[]{", "}, StringSplitOptions.None))
.ToDictionary(p => p[0], p => p[1]);
Dictionary dict=
File.ReadLines(文件名)
.Select(l=>l.Split(新字符串[]{“,”},StringSplitOptions.None))
.ToDictionary(p=>p[0],p=>p[1]);
使用ReadAllLines(字符串)
参考:看起来像是一个为我预先编写的专用csv解析器的作业。通过使用1.Split(“,”)方法,它会使它们成对吗?如果是这样的话,我还能在字典中将它们指定为键和值吗?@nearyerbytes:是的,每行都有一个
string[]
。您可以通过索引器或linq方法访问它们,如First()
或Last()
。如果需要字典(请注意,不允许重复键):var dict=lines.ToDictionary(l=>l.Split(',')[0],l=>l.Split(',')[1])代码>这是一个大得多的程序的一部分,在这个程序中,要编写AGTAATTAAGTA之类的代码行,程序需要使用.txt文件将它们转换为该文件右列的键。因此,在将.txt文件转换为数组后,我需要将数组分配给键和值字典,让程序在代码行中搜索“Key”并输出“Value”,这样像AGTATTAAG这样的代码行就会输出HMI,因为我的IDE不喜欢.ToDictionary调用。我有系统。它调用的Linq参数仍然不想识别它。有什么想法吗?@nearybytes:问题出在Split
方法上。要在字符串上拆分,参数更复杂。
File.ReadLines(path)
.Select(l => l.Split(','))
.ToDictionary(k => k[0], v => v[1]);
Dictionary<string, string> dict =
File.ReadLines(filename)
.Select(l => l.Split(new string[]{", "}, StringSplitOptions.None))
.ToDictionary(p => p[0], p => p[1]);