[英]Convert string numbers to Array C#
可以说我有一个string str = "012345";
我想将其转换为看起来像intAry = {0, 1, 2, 3, 4, 5};
的数组intAry = {0, 1, 2, 3, 4, 5};
。 有任何想法吗?
我是这样尝试的
for (int i = 0; i < str.Length; i++)
{
intAry[i] = Convert.ToInt32(str[i]);
}
但是去数组的是48、49等。我应该在这里使用哪种正确的方法?
for (int i = 0; i < str.Length; i++)
intAry[i] = str[i] - '0';
更新资料
或作为LINQ:
var array = str.Select(ch => ch - '0').ToArray();
这个怎么样。
string source = "12345";
Int32[] array=source.Select(x => Int32.Parse(x.ToString())).ToArray();
但请记住, 源中的每个字符都应可转换为整数
输入48、49等,因为这是ASCII值“ 0”。 如果从char中减去“ 0”,它将为您提供正确的整数。 无需转换。
intAry[i] = str[i] - '0';
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.