如何将char数组转换为int?

时间:2011-11-15 19:30:32

标签: c# arrays winforms textbox

我正在从文本框中输入。我已将输入数字从文本框保存到这样的数组:

char[] _array = textBox1.Text.ToCharArray(0, textBox1.Text.Length);

现在我想将数组转换为int数组,因为我想对数组的每个索引执行数学运算。

我如何实现目标? 感谢。

4 个答案:

答案 0 :(得分:10)

如果您只想要每个字符的字符代码,可以使用LINQ。

var intArrayOfText = "some text I wrote".ToCharArray().Select(x => (int)x);

var intArrayOfText = someTextBox.Text.ToCharArray().Select(x => (int)x);

答案 1 :(得分:6)

如果每个字符都是数字,您可以将其解析为int:

List<int> listOfInt = new List<int>();
_array.ToList().ForEach(v => listOfInt.Add(int.Parse(v.ToString())));
int[] _intArray = listOfInt.ToArray();

字符代码值:

List<int> listOfCharValue = new List<int>();
_array.ToList().ForEach(v => listOfCharValue.Add((int)v));
int[] _charValueArray = listOfCharValue.ToArray();

您需要处理异常。

答案 2 :(得分:1)

假设我在评论中提出的问题属实:

string[] ints = { "1", "2", "3" };

var str = ints.Select(i => int.Parse(i));

但是,只有在您已经验证文本框中的输入是数字时,上述操作才有效。

答案 3 :(得分:1)

我已经解决了我的问题。我使用list来完成任务。

在将每个索引值转换为int后,我将每个数组索引存储在列表的相对索引处。

使用list对我来说似乎更方便。 :)

感谢你们所有人。