使用下面的代码阅读CSV文件后,将其转换为列表。但是然后我需要拆分句子,我不知道该怎么做。
var parsedResult = new List<Dictionary<string, string>>();
var records = text.Split("\r\n");
foreach (var record in records)
{
var fields = record.Split("\r\n");
var recordItem = new Dictionary<string, string>();
var i = 0;
foreach (var field in fields)
{
recordItem.Add(i.ToString(), field);
i++;
}
parsedResult.Add(recordItem);
}
如何将C#列表从{{“ a,b,c”},{“ c,d,e”}}转换为{{“ a”,“ b”,“ c”},{“ c “,” d”,“ e”}}?
答案 0 :(得分:0)
所以您有一个包含一个字符串的列表列表, 您可以使用Linq来帮助您:
using System.Linq;
List<List<string>> BigList = new List<List<string>>(){new List<string>{"a,b,c"}, new List<string>{ "c,d,e" } };
var result = BigList.Select(l => l[0].Split(',').ToList()).ToList();
result是一个或多个字符串列表的列表。
答案 1 :(得分:0)
假设您只想让代码生成{ { "a", "b", "c" }, { "c", "d", "e" } }
,而不是专门将{ { "a,b,c" }, { "c,d,e" } }
变成{ { "a", "b", "c" }, { "c", "d", "e" } }
,那么我想如果更改行{{1 }}拆分为var fields = record.Split("\r\n");
,即,
。我认为按record.Split(',')
进行拆分不会有任何作用,因为早先的拆分已消除了所有"\r\n"
出现的情况。
请注意,我不确定是否存在带有单个"\r\n"
参数的string.Split
重载,因此您可能必须将其更改为string
。