2012-11-20 84 views
2

我想一个列表框转换为数组:列表框转换到阵列INT

var modarray = listBox1.Items.Cast<String>().ToArray(); 

但后来我还需要使用一个int数组所以我尝试了以下内容:

int[] arr = modarray.Cast<int>().ToArray(); 

我收到一个错误,提示无法转换数组。有人可以帮我吗?

回答

3

试试这个:

int[] arr = modarray.Select(int.Parse).ToArray(); 

这将使用int.Parse()方法为每个字符串的原始数组中创建一个新的整数数组。

0

试试这个:

int[] arr = modarray.Select(I => Convert.ToInt32(I)).ToArray(); 
0

.Cast<int>()就像foreach (var i in list) yield return (int)i;

哪,如果你的项目是字符串下方将失败。

我相信你需要:int[] arr = modarray.Select(s => Int32.Parse(s)).ToArray();