【发布时间】:2014-12-27 21:23:56
【问题描述】:
我们被分配了一项任务,从目录中读取信息。我正在努力寻找价值最大的文件。这个我试过了;
using System.IO;
static void Main(string[] args)
{
DirectoryInfo folderInfo = new DirectoryInfo("path");
FileInfo[] files = folderInfo.GetFiles();
int largestSize;
for (largestSize = 0; largestSize < files.Length; largestSize++)
{
Console.WriteLine(files[largestSize].Length);
}
Console.ReadLine();
}
但这不起作用。当我说它不起作用时,我的意思是它在列表中显示目录中所有文件的文件大小。我完全糊涂了,因为这正是我的导师建议的。 “为从 0 开始的最大文件创建一个变量并遍历文件以查找最大大小”。
我怀疑我可以使用或理解 Foreach 循环,因为到目前为止我只学习了 For、do-while、while、if 和 if else 语句。
【问题讨论】:
-
我认为你需要花更多的时间来理解代码中的每个语句和构造实际上在做什么,而不是将代码视为将执行特定任务的不透明魔法。跨度>
-
这里是您发布的代码中发生的事情的逐个播放。您实例化一个
FolderInfo对象(它表示一个文件夹,并公开允许您获取有关该文件夹及其内容的更多信息的成员)。您可以使用此实例获取FileInfo对象的数组,这些对象同样表示文件。然后,您使用名为largestSize的计数器(这可能是您出错的地方)遍历文件数组,并且对于每个FileInfo,您将Length属性的值写入控制台。最后,等待用户按回车键。 -
我是初学者,绝对的初学者。这是我的第一个编程语言,在我几乎不了解 VB 编码之前。我将通过并尝试了解我在做什么。
标签: c#