Hallo Com,
ich soll in ein Programm Zeiten einlesen und diese aus einer erstellten Textdatei auswerten.
Also im Prinzip eine Stempeluhr.
Ich habe eine Schleife geschrieben mit der ich Werte einlesen kann. Zum einen Start und zum anderen end.
In der Textdatei steht es dann folgendermaßen:
"start Thu Jan 12 17:42:11 2017"
"end Thu Jan 12 17:43:15 2017"
Aus allen Werten der Textdatei soll ich nun die Differenzzeit berechnen.
Im Beispiel wären das also 00:01:04.
Jetzt frage ich mich wie das gehen soll. Ich dachte daran es irgendwie in einen Integer zu wandeln.
Leider habe ich dazu weder in einem Buch noch im Internet einen Lösungsansatz gefunden.
Hier mal mein bisheriges Programm:
Es kann Zeiten einlesen und gibt diese anschließend in der Console aus.
Hoffe auf ein paar Gedankenanstöße
MfG
Hotte
ich soll in ein Programm Zeiten einlesen und diese aus einer erstellten Textdatei auswerten.
Also im Prinzip eine Stempeluhr.
Ich habe eine Schleife geschrieben mit der ich Werte einlesen kann. Zum einen Start und zum anderen end.
In der Textdatei steht es dann folgendermaßen:
"start Thu Jan 12 17:42:11 2017"
"end Thu Jan 12 17:43:15 2017"
Aus allen Werten der Textdatei soll ich nun die Differenzzeit berechnen.
Im Beispiel wären das also 00:01:04.
Jetzt frage ich mich wie das gehen soll. Ich dachte daran es irgendwie in einen Integer zu wandeln.
Leider habe ich dazu weder in einem Buch noch im Internet einen Lösungsansatz gefunden.
Hier mal mein bisheriges Programm:
C#:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>
#include <time.h>
int main() {
int eingabe;
time_t start_t;
time_t end_t;
time_t t;
struct tm *ts;
FILE*fp;
printf(" #### ARBEITSZEITERFASSUNG ###\n\n");
printf("Druecken Sie: 0 fuer Einstempeln\n");
printf(" 1 fuer Ausstempeln\n");
printf(" 2 fuer Auswertung der Gesamtarbeitszeit\n\n");
printf("Auswertung der Gesamtzeit nur moeglich wenn Anzahl Start sowie Anzahl end uebereinstimmt!!\n");
while(1){
scanf("%d", &eingabe);
getchar();
if(eingabe==0){
fp= fopen("Textdatei.txt", "a+");
printf("Beginn Zeitaufnahme\n");
time(&start_t); //Zeitaufnahme starten
fprintf(fp, "start ");
fprintf (fp, asctime(localtime(&start_t)));
t=time(NULL);
ts=localtime(&t);
fclose(fp);
}
if(eingabe==1){
fp= fopen("Textdatei.txt", "a+");
printf("Ende Zeitaufnahme\n");
time(&end_t);
fprintf(fp, "end ");
fprintf(fp, asctime(localtime(&end_t))); // Ausgabe Ende der Zeitmessung in Datei
t=time(NULL);
ts=localtime(&t);
fclose(fp);
}
if(eingabe==2){
break;
}
}
fp= fopen("Textdatei.txt", "r");
char x;
x= fgetc(fp);
while(x != EOF)
{
printf("%c", x);
x= fgetc(fp);
}
return 0;
}
Es kann Zeiten einlesen und gibt diese anschließend in der Console aus.
Hoffe auf ein paar Gedankenanstöße

MfG
Hotte