Как я могу конвертировать ЧЧ: ММ: СС в считанные секунды, используя C # .net?

Как насчет этого ....

Я использовал это, чтобы пройти через набор записей (строки в файле Excel в одном случае)

L - текущая строка число X - это общее количество строк, для которых dat_Start имеет значение Now (), когда начинается процедура

Debug.Print Format((L / X), "percent") & vbTab & "Time to go:" & vbTab & Format((DateDiff("n", dat_Start, Now) / L) * (X - L), "00") & ":" & Format(((DateDiff("s", dat_Start, Now) / L) * (X - L)) Mod 60, "00")
23
задан Adam Lassek 25 March 2009 в 15:16
поделиться

5 ответов

Это похоже на временную шкалу. Так просто разбери текст и получи секунды.

string time = "00:01:05";
double seconds = TimeSpan.Parse(time).TotalSeconds;
69
ответ дан Michael Piendl 25 March 2009 в 15:16
поделиться

Вы можете использовать метод разбора на aTimeSpan.

http://msdn.microsoft.com/en-us/library/system.timespan.parse.aspx

TimeSpan ts = TimeSpan.Parse( "10:20:30" );
double totalSeconds = ts.TotalSeconds;

Свойство TotalSeconds возвращает общее количество секунд, если вы просто хотите секунд, затем используйте свойство секунд

int seconds = ts.Seconds;

Секунды возвращают «30». TotalSeconds возвращают 10 * 3600 + 20 * 60 + 30

21
ответ дан Jesper Fyhr Knudsen 25 March 2009 в 15:16
поделиться

TimeSpan.Parse () проанализирует отформатированную строку.

Так

TimeSpan.Parse("03:33:12").TotalSeconds;
10
ответ дан Alan 25 March 2009 в 15:16
поделиться

Этот код позволяет часам и минутам быть необязательными. Например,

«30» -> 24 секунды
«1:30» -> 90 секунд
«1: 1: 30» -> 3690 секунд

int[] ssmmhh = {0,0,0};
var hhmmss = time.Split(':');
var reversed = hhmmss.Reverse();
int i = 0;
reversed.ToList().ForEach(x=> ssmmhh[i++] = int.Parse(x));                           
var seconds = (int)(new TimeSpan(ssmmhh[2], ssmmhh[1], ssmmhh[0])).TotalSeconds;  
1
ответ дан James Lawruk 25 March 2009 в 15:16
поделиться
//Added code to handle invalid strings
string time = null; //"";//"1:31:00";
string rv = "0";
TimeSpan result;
if(TimeSpan.TryParse(time, out result))
{
    rv = result.TotalSeconds.ToString();
}
retrun rv;
1
ответ дан Gokul 25 March 2009 в 15:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: