我有一大堆函数返回数据类型ArrayList。每个列表项都包含一个字符串值,该值具有多个值,所有值都以“\ t”分隔,到目前为止,我一直在追加带有数据的文本框。我已经完成了这个,所以我可以直接将输出和复制/粘贴到Excel中,因为这是一个简单的要求,直到现在..
我想将ArrayList(包含多个制表符分隔的字符串)转换为字符串数组的列表,即
List<string[]>
这样我就可以尝试填充DataGridView控件。
有人指出我正确的方向吗?感谢
答案 0 :(得分:2)
喜欢这个吗?
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();
答案 1 :(得分:1)
首先,将您的arrayList转换为可串行的字符串
然后对于每个字符串,将其拆分为另一个具有\t
分隔符的可串行字符串,并将其展平为数组。
List<string[]> listOfArray = myArrayList.Cast<string>()
.Select(s => s.Split('\t').ToArray())
.ToList();