C # чтение из текстового файла (который имеет разные типы данных), чтобы получить сумму числовых значений - PullRequest
0 голосов
/ 03 октября 2011

Итак, у меня есть файл .txt, который выглядит следующим образом:

-9
5.23
b
99
Magic
1.333
aa

как бы мне затем пройти через нее, чтобы получить сумму всех числовых значений и оставить нетронутыми не числовые значения?

Ответы [ 3 ]

2 голосов
/ 03 октября 2011

Чтение текстового файла с использованием System.IO.StreamReader и использование метода Double.TryParse для анализа числовых данных.

2 голосов
/ 03 октября 2011
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);
    }
}
0 голосов
/ 03 октября 2011

В вашем цикле вы можете:

  • Использовать int.TryParse

  • Использовать регулярное выражение для сопоставления только целых чисел.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...