我有一个单TextBox
的表单,用于输入整数。如果用户输入多个整数(用逗号分隔或不用),我怎么能单独阅读它们?
答案 0 :(得分:3)
var inputString = txtIntegers.Text;
List<int> integres = new List<int>();
if (!String.IsNullOrEmpty(inputString))
{
char[] inputChars = inputString.ToCharArray();
int output = 0;
foreach(char inputchar in inputChars)
{
bool conversionSuccess = int.TryParse(inputchar.ToString(), out output);
if (conversionSuccess)
{
integres.Add(output);
output = 0;
}
}
}
你可以这样。这将消除字符或符号等无效整数。最后,您只能从输入中获得整数。
答案 1 :(得分:1)
让我将TextBox命名为List<Int>()
,并在textBox中提供的输入为“12,11,10”;您可以使用以下代码将其转换为 List <int> myIntegers = txtInputNumber.Text.Split(',').Select(x=> Convert.ToInt32(x)).ToList() ;
:
,
附加说明:
String.Split()
方法将帮助您根据分隔符(此处为,
)将字符串拆分为数组/列表。这基本上是一个字符串的集合。你的要求是得到一个整数集合。您需要将集合中的每个元素转换为整数。 try..catch
,因此您需要包含 try
{
List<int> myIntegers = txtInputNumber.Text.Split(',').Select(x => Convert.ToInt32(x)).ToList();
}
catch
{
// Display error here
// Input is not valid;
}
所以代码片段如下:
{{1}}