Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将字符串数字转换为数组C#_C# - Fatal编程技术网

将字符串数字转换为数组C#

将字符串数字转换为数组C#,c#,C#,假设我有一个字符串str=“012345”

假设我有一个
字符串str=“012345”intAry={0,1,2,3,4,5}。有什么想法吗

我试过这样

for (int i = 0; i < str.Length; i++)
{
   intAry[i] = Convert.ToInt32(str[i]);
}
for(int i=0;i
但是进入数组的是48、49等。我应该在这里使用哪种正确的方法?

这个怎么样

    for (int i = 0; i < str.Length; i++)
        intAry[i] = str[i] - '0';
  string source = "12345";
   Int32[] array=source.Select(x => Int32.Parse(x.ToString())).ToArray();

但是请记住,中的每个字符都应转换为一个整数48、49等,因为这是ASCII值“0”。如果从字符中减去“0”,将得到正确的整数。不需要转换

intAry[i] = str[i] - '0';

只需减去ASCII码“0”,即48(十进制)。在ASCII和Unicode中,数字顺序是连续的。当使用“旧”编程语言(例如C)时,这是一个相当标准的技巧。我想你的意思是str[I]-“0”不应该是
str[I]-“0”
?你可以选择intAry[I]=Convert.ToInt32(str[I]-“0”);是的。str[i]-“0”给了我想要的:)
intAry[i] = str[i] - '0';