C# 如何从文件中计算整数和的问题
我有以下格式的文件:C# 如何从文件中计算整数和的问题,c#,arrays,file,sum,integer,C#,Arrays,File,Sum,Integer,我有以下格式的文件: 4651 9537 8154 我必须计算每行的总和。我试着这样做: string[] files = File.ReadAllLines(@"myPath"); // put each row of file in the array for(int i = 0; i < files.Length; i++) { string[] subFiles = files[i].Split(','); // try to make ar
4651
9537
8154
我必须计算每行的总和。我试着这样做:
string[] files = File.ReadAllLines(@"myPath"); // put each row of file in the array
for(int i = 0; i < files.Length; i++) {
string[] subFiles = files[i].Split(','); // try to make array of each files array element
float sum = 0;
for(int k = 0; k < subFiles.Length; k++) {
float number = Singe.Parse(subFiles[k]); // convert each element of subFiles into float
sum += number;
}
Console.WriteLine(sum);
}
如果有人能告诉我哪里出了错,我该怎么做,我将不胜感激。您正在设置
float sum=0代码>在重置每个循环结果的循环内,您需要像这样将其移到外部
float sum = 0;
string[] files = File.ReadAllLines(@"1.txt"); // put each row of file in the array
for (int i = 0; i < files.Length; i++)
{
///reset of your code
}
浮点和=0;
string[]files=File.ReadAllLines(@“1.txt”);//将文件的每一行放入数组中
for(int i=0;i
输出
46511418822342
您可以利用以下事实,即每一行都是一个字符串
,因此是一个IEnumerable
,可以使用LINQ进行查询:
foreach (string line in File.ReadLines(@"myPath"))
{
double sum = line.Sum(Char.GetNumericValue);
Console.WriteLine(sum);
}
Char.GetNumericValue
获取可以求和的每个字符的double
表示形式。您似乎希望每行都有一个逗号分隔的整数列表,但每行只有一个。4651
的和是4651
。我不确定你到底期望什么。您是要计算每行/每行或每文件的总和?另一方面,文件
和子文件
在引用行(或行的一部分)而不是文件时,它们的名称选择不当。你应该在Singe.Parse上得到一个编译错误,如果没有其他的…@Hereticsmonkey为什么会得到一个错误,Single
它仍然是一个浮点数。@styxSingle.Parse
可以正常工作Singe.Parse
听起来像是在炉子上做的事情。。。
foreach (string line in File.ReadLines(@"myPath"))
{
double sum = line.Sum(Char.GetNumericValue);
Console.WriteLine(sum);
}