我做了这段代码,但它没有给出摘要。我仍然可以得到每一行的数字,但不能总结......
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();
}
}
}
}
答案 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]);