C# 估计用C语言完成一个课程所需的时间

C# 估计用C语言完成一个课程所需的时间,c#,stopwatch,C#,Stopwatch,我用秒表,我想估计一下从开始到结束需要多长时间 它看起来像一个非常简单的复合体。我实例化了秒表,启动它,然后停止它,然后编写一个方法。它应该提供从开始到停止的时间 不幸的是,它总是为我提供00:00:00 我是否必须在我的PC或PC上设置特定于我的文化的内容 我也试过了。开始新的,但没有用 Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); string juniorDevOpsFo

我用秒表,我想估计一下从开始到结束需要多长时间

它看起来像一个非常简单的复合体。我实例化了秒表,启动它,然后停止它,然后编写一个方法。它应该提供从开始到停止的时间

不幸的是,它总是为我提供00:00:00

我是否必须在我的PC或PC上设置特定于我的文化的内容

我也试过了。开始新的,但没有用

        Stopwatch stopwatch = new Stopwatch();
        stopwatch.Start();

        string juniorDevOpsFolder = "JuniorDevOps";
        string targetPath = Directory.GetCurrentDirectory();
        int endIndex = targetPath.IndexOf(juniorDevOpsFolder);
        var juniorDevOpsPath = targetPath.Substring(0, endIndex + juniorDevOpsFolder.Length);
        string directory = "Files";
        string targetDirectory = Path.Combine(juniorDevOpsPath, directory);
        ProcessDirectory(targetDirectory);
        stopwatch.Stop();

        // Write hours, minutes and seconds.
        Console.WriteLine("Time elapsed: {0:hh\\:mm\\:ss}", stopwatch.Elapsed);

同样,输出是00:00:00,可能不到一秒钟。尝试格式化毫秒

也许这只是因为你的程序执行不到1秒,这就是为什么你得到零小时零分零秒?尝试无格式输出或ElapseSmillesons属性执行您的程序所用时间不到1秒,因此设置了秒表格式。已用时间是将00:00:00打印到控制台。尝试使用stopwatch.ElapsedMilliseconds代替格式化的stopwatch.Elapsed

差不多

    Stopwatch stopwatch = new Stopwatch();
    stopwatch.Start();

    //Your business logic

    stopwatch.Stop();
    Console.WriteLine($"Elapsed milliseconds : {stopwatch.ElapsedMilliseconds}" );
那代码呢:

var watch = new System.Diagnostics.Stopwatch();

        watch.Start();

        // do something what do you want

        watch.Stop();

        Console.WriteLine($"Execution Time: {watch.ElapsedMilliseconds} ms");

什么是ProcessDirectory?这看起来不像。我调用方法,但它们在这里不相关,请关注秒表部分。您调用的方法非常相关,因为它似乎比1s快。你应该注意到的。。!这应该是一个评论。你甚至不确定,所以答案不是正确的选择。在OP说这就是问题所在后,你可以把它变成一个答案。为了回答这个问题,您还应该添加如何执行您的建议-显示代码或链接到某些文档页面。好吧,没有办法确定,因为我不知道ProcessDirectory做什么。但问题很可能是它只需要不到一秒钟的时间,因为大多数代码行所需的时间远远少于一秒钟。我提出了一个答案-以不同的格式设置,因为OP清楚地知道如何设置TimeSpan对象的格式。你不需要像其他答案那样使用elapsedmillyses。正确的解决方案是格式化显示ms部件的时间。很可能,但不确定。一条评论说可能不到一秒钟。尝试将其格式化为毫秒。链接到格式化。那太棒了。如果OP说这有助于您创建一个与注释内容相同的答案,并包含一个毫秒格式字符串的示例。我不知道我是不是太挑剔了,但我只是想提一下。这应该是一个评论。你甚至不确定,也许答案不是正确的选择。在OP说这就是问题所在后,你可以把它变成一个答案。幸好你提到了ElapseSmillesons属性,但在这种情况下,尝试链接到文档-这总是非常有用的。同样对于未格式化的输出部分,显示一个示例:谢谢,它正好经过毫秒。