我如何计算文本文件中的数字摘要?

时间:2016-03-11 15:32:49

标签: c# streamreader

我做了这段代码,但它没有给出摘要。我仍然可以得到每一行的数字,但不能总结......

using System;
using System.IO;
namespace Progaram
{
    class Count
    {
        static void Main()
        {

            using (StreamReader sr = new StreamReader("file.txt"))
            {

                string[] numbers = File.ReadAllLines("file.txt");


                int summary = 0;

                for (int i = 0; i < numbers.Length; i++)
                {

                    summary += numbers[i];

                    //Console.WriteLine(numbers[i]);
                }

                Console.WriteLine(summary);

                sr.ReadLine();
            }
        }
    }
}

2 个答案:

答案 0 :(得分:1)

您当前的解决方案无法编译 您将收到以下编译错误:

  

无法将'string'类型转换为'int'。

您需要将已解析的字符串转换为int。

此外,您正在使用StreamReader,并在读取所有行后读取一行。在这种情况下,您不需要StreamReader。

using System;
using System.IO;

namespace Progaram
{
    class Count
    {
        static void Main()
        {
            string[] numbers = File.ReadAllLines("file.txt");

            int summary = 0;

            for (int i = 0; i < numbers.Length; i++)
            {
                summary += Convert.ToInt32(numbers[i]);
            }

            Console.WriteLine(summary);    
        }
    }
}

答案 1 :(得分:0)

您无法将字符串添加到int。

您需要将整个字符串数组转换为带

的int数组
int[] intNumbers = Array.ConvertAll(numbers, int.Parse);

然后索引此数组

summary += intNumbers[i];

或者像迈克尔建议的那样,在添加

之前转换数字[i]
summary += int.Parse(numbers[i]);