我正在尝试将C#中的变量audio.Duration
转换为显示字符串的时间。基本上,audio
是使用打开文件对话框加载的DirectX音频实例。我希望能够在标签内的进度条结束时显示持续时间,但是DurationLabel = audio.Duration.ToString();
会给我一些愚蠢的值,例如350.2739201
。
如何对其进行转换,以便将文本显示为mm:ss:(milliseconds)
?
答案 0 :(得分:2)
Audio.Duration是双倍的 http://msdn.microsoft.com/en-us/library/windows/desktop/bb324228(v=vs.85).aspx
试试这个
TimeSpan time = TimeSpan.FromSeconds(audio.Duration);
DurationLabel.Text = String.Format("{0:D2}:{1:D2}:{2:D2}",
(int)time.TotalHours,
time.Minutes,
time.Seconds);
答案 1 :(得分:1)
你可以使用
DurationLabel.Text =TimeSpan.FromSeconds(audio.Duration).ToString(@"hh\:mm\:ss");