Преобразовать разделенную запятыми строку целых в массив int
Я только нашел способ сделать это наоборот: создать разделенную запятыми строку из списка или массива int, но не о том, как преобразовать ввод, какstring str = "1,2,3,4,5";
в массив или список целых.
Вот моя реализация (вдохновленныйэтот пост Эрик Липперт):
public static IEnumerable StringToIntList(string str)
{
if (String.IsNullOrEmpty(str))
{
yield break;
}
var chunks = str.Split(',').AsEnumerable();
using (var rator = chunks.GetEnumerator())
{
while (rator.MoveNext())
{
int i = 0;
if (Int32.TryParse(rator.Current, out i))
{
yield return i;
}
else
{
continue;
}
}
}
}
Как вы думаете, это хороший подход или есть более простой, может быть, даже построенный в пути?
РЕДАКТИРОВАТЬ: Извините за путаницу, но метод должен обрабатывать неправильный ввод, как"1,2,,,3"
или же"###, 5,"
и т.д., пропустив это.