我有一个文本框,应填充4个数字的int,类似于[0000,4444,5555,6666]。我需要得到逗号的位置,然后将4个数字放在var中。 你能救我吗?
答案 0 :(得分:8)
您是否尝试过String.Split
?
string[] allTokens = textBox1.Text.Split(new []{ ','}, StringSplitOptions.RemoveEmptyEntries);
int[] allInts = Array.ConvertAll<string, int>(allTokens, int.Parse);
如果格式无效,您可以使用int.TryParse
:
int num = 0;
int[] allInts = allTokens
.Where(s => int.TryParse(s, out num))
.Select(s => num)
.ToArray();
答案 1 :(得分:3)
您将获得int list
var numbers = TextBox1.Text.Split(',').Select(str => {
int value;
bool success = int.TryParse(str, out value);
return new { value, success };
})
.Where(pair => pair.success)
.Select(pair => pair.value).ToList();
答案 2 :(得分:2)
你可以尝试
var resultArr = tb.split(",");
foreach (elem in resultArr)
{
int i;
if (int.tryparse(elem, out i))
// do something with i
else
// that was not an int
}