Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: q 28. 04. 2012, 21:19:04
-
Potřebuju spočítat rozdíl v zadaném čase.
Když např. zadám počáteční čas 15:30 a koncový čas 16:05, chci dostat výsledek 35 minut, nebo 2100 sekund (to je mi jedno). Potřebuju mít ošetřený přechod přes půlnoc: 23:50 0:20 = 30 minut. Na vstupu mě zajímají jenom hodiny a minuty.
$ rozdilCasu 15:30 16:05
35
$
Napadlo mě použít date +%s ale to bere i den.
Existuje neco hotoveho, nebo si to musim napsat sam?
-
NSDate a NSDateComponents (ObjC na Macu).
-
#include <stdio.h>
#define DAY_MINS
int main( int argc, char * argv[]){
int h,m,i,a,b,x;
if (argc<3)return -1;
for (i=1;i<=2;i++){
sscanf(argv[i],"%i:%i",&h,&m);
b=a;
a=m+60*h;
}
if (a>b){x=a-b;} else {x=60*24+a-b;}
printf("%u\n",x);
return 0;
}
-
TimeSpan ts = date1.Subtract(date2);
-
Quick & Dirty ...
qazasd@komp:~$ ./rozdilCasu 15:30 16:05
35
qazasd@komp:~$ cat rozdilCasu
#!/bin/bash
echo $1 $2 | tr ':' ' ' | awk '{b=$1*60+$2; e=$3*60+$4; if(e<b) e+=24*60; print e-b}'