Итак, у меня есть файл .txt, который выглядит следующим образом:
-9 5.23 b 99 Magic 1.333 aa
как бы мне затем пройти через нее, чтобы получить сумму всех числовых значений и оставить нетронутыми не числовые значения?
Чтение текстового файла с использованием System.IO.StreamReader и использование метода Double.TryParse для анализа числовых данных.
System.IO.StreamReader
Double.TryParse
using System; using System.IO; using System.Linq; class Sample { static void Main(){ string[] data = File.ReadAllLines("data.txt"); double sum = data.Select( x => {double v ;Double.TryParse(x, out v);return v;}).Sum(); Console.WriteLine("sum:{0}", sum); } }
В вашем цикле вы можете:
Использовать int.TryParse
int.TryParse
Использовать регулярное выражение для сопоставления только целых чисел.