我的程序運行在cmd.exe的批處理文件,讀完後我要顯示一個消息框,以用戶說Finished in #.## seconds
,獲取時間需要幾秒鐘完成?
我重定向輸出CMD使用process.BeginOutputReadLine()
一個文本框,這是我試過的代碼:
if (e.Data == null)
{
string time = process.TotalProcessorTime.Seconds.ToString();
MessageBox.Show("Finished in " + time + " seconds");
}
完成該過程耗時約7-15秒,但MessageBox顯示爲Finished in 0 seconds
。
如何在幾秒鐘內完成準確完成所需時間?
[使用'Stopwatch'對象(http://msdn.microsoft.com/en-us的頂部聲明它的本地方法以外/library/system.diagnostics.stopwatch.aspx) –
而不是使用字符串concat使用'string.Format'並使用'{0}傳遞參數'我也給你提供了一個簡單的答案 – MethodMan