如何将System.Collections.Specialized.StringCollection类型转换为string []

时间:2012-11-15 06:12:40

标签: c# c#-4.0

我的类库中的某些函数接受string[]作为参数。

我想将System.Collections.Specialized.StringCollection转换为string[]

是否可以使用一个衬垫或者我必须创建带循环的数组?

3 个答案:

答案 0 :(得分:29)

使用StringCollection.CopyTo(string[],index)将内容复制到字符串数组。 所有.Net框架都支持此功能。

System.Collections.Specialized.StringCollection sc = new System.Collections.Specialized.StringCollection();
sc.Add("Test");
sc.Add("Test2");

string[] strArray = new string[sc.Count];
sc.CopyTo(strArray,0);

答案 1 :(得分:26)

试试这个

System.Collections.Specialized.StringCollection strs = new  System.Collections.Specialized.StringCollection();
strs.Add("blah"); 
strs.Add("blah"); 
strs.Add("blah"); 

string[] strArr = strs.Cast<string>().ToArray<string>();

答案 2 :(得分:8)

这就是诀窍:

System.Collections.Specialized.StringCollection sc = new System.Collections.Specialized.StringCollection();
/*sc.Add("A");
sc.Add("B");*/
string[] asArray = sc.Cast<string>().ToArray();

免责声明:我不知道这是什么性能特征。