bool isInt = true;
string[] str = "1,2,3,4".Split(new[] {','}, StringSplitOptions.RemoveEmptyEntries);
int counter = 0;
List<int> parsedInts = new List<int>(str.Length);
while(isInt && counter < str.Length)
{
int parsedInt;
isInt = int.TryParse(str[counter], out parsedInt);
counter++;
if (isInt) {
parsedInts.Add(parsedInt);
}
}
// then you can return the list as an array if you want
parsedInts.ToArray();
Хотя этот метод является более и более многословен, он на самом деле делает, что вы можете разобрать строку в междунар перед назначением его в массив.
Обязательно обратите внимание на то, что он будет отменен, как только он не сможет проанализировать строку, однако вы можете более подробно разместить else
в случае, если вы столкнулись с ошибочным типом данных.
str.Split (','). Выберите (int.Parse) .ToArray() ;? –
Пожалуйста, прочитайте это сообщение: http://stackoverflow.com/questions/1019793/how-can-i-convert-string-to-int –