我有一大堆返回数据类型 ArrayList 的函数。每个列表项都包含一个字符串值,该字符串值具有多个值,所有值都由“\t”分隔,直到现在我一直在附加一个带有数据的文本框。我已经这样做了,所以我可以将输出直接复制/粘贴到 Excel 中,因为到目前为止这是一个简单的要求..
我想将 ArrayList (包含多个制表符分隔的字符串)转换为字符串数组列表,即
List<string[]>
这样我就可以尝试填充 DataGridView 控件。
有人指出我正确的方向吗?谢谢
像这样?
List<string> list = arrayList.Cast<string>()
.SelectMany(s => s.Split('\t'))
.ToList();
这会将 arrayList 中的每个对象转换为一个字符串,将每个字符串拆分为一组字符串,并将“一组集合”展平为一个字符串列表。
或者这个,如果你不想展平集合:
List<string[]> list = arrayList.Cast<string>()
.Select(s => s.Split('\t'))
.ToList();
首先,将您的 arrayList 转换为可枚举的字符串。
然后对于每个字符串,将其拆分为另一个可枚举的字符串,并带有\t
分隔符,并将其展平为一个数组。
List<string[]> listOfArray = myArrayList.Cast<string>()
.Select(s => s.Split('\t').ToArray())
.ToList();