我有一个c#list类型,里面有多个对象。
结构将是
> -List<object>
> --[0] object{object[]}
> ---[0] = object {string}
> ---[1] = object {string}
> ---[2] = object {string}
> --[1] object{object[]}
> ---[0] = object {string}
> ---[1] = object {string}
> ---[2] = object {string}
我无法弄清楚如何提取每个数组中对象字符串的内容。毫无疑问是新手的错误。
有人可以给我一个指针吗?
答案 0 :(得分:3)
看起来List<object>
实际上只包含object[]
,其中元素为string
。请尝试以下
List<object> source = ...;
List<string> destination = new List<string>();
foreach (var obj in source) {
var array = (object[])obj;
foreach (var str in array) {
destination.Add((string)str);
}
}
如果LINQ可用,您可以执行以下操作
List<string> destination = source
.SelectMany(x => ((object[])x).Cast<string>())
.ToList();
答案 1 :(得分:0)
foreach (Object[] record in someList) {
foreach(Object item in record) {
Console.WriteLine(item.ToString();
}
}
答案 2 :(得分:0)
看起来您确实需要使用List<String[]>
。