在每个位置拆分一个字符串c#

问题描述 投票:-1回答:2

所以我正在为C# .NET 3.5的条形码扫描器编写一个程序。当我扫描条形码时,我得到一个只有数字的string,我希望该字符串在每个数字处分开并将每个数字放入int array,但我无法弄清楚如何。你们有人知道怎么做吗?

c# .net
2个回答
7
投票

试试这个:

int[] array = "1234567890".ToCharArray().Select(c => int.Parse(c.ToString())).ToArray();

您可以省略ToCharArray的方法调用,因为string已经是chars的集合:)


1
投票

char转换为integer有多种方法

char digit = '0';

int result = (int)char.GetNumericValue(digit);
int result = ((int)digit) - 48;
int result = digit - '0'; //fastest approach
int result = int.Parse(digit.ToString());
int result = Convert.ToInt32(digit.ToString());
int result = digit & 0x0f;

所以,如果你想要最高性能的方法,那么使用

string input = "123";
int[] result = input.Select(x => x - '0').ToArray();
© www.soinside.com 2019 - 2024. All rights reserved.