列表框转换为数组int

时间:2012-11-20 17:21:29

标签: c# .net arrays listbox int

我正在尝试将列表框转换为数组:

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

但是我还需要使用int数组,所以我尝试了以下内容:

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

我收到的错误表明无法转换数组。请有人帮帮我吗?

3 个答案:

答案 0 :(得分:4)

试试这个:

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

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

答案 1 :(得分:1)

请改为尝试:

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

答案 2 :(得分:1)

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

类似

如果您的商品是下面的字符串,则会失败。

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