Función LeerEntrada().

This commit is contained in:
Fernando Álvarez Ruiz 2021-01-01 20:15:43 +01:00
parent 0829d71d7a
commit 8692c6b90b
3 changed files with 32 additions and 8 deletions

2
.gitignore vendored
View File

@ -54,4 +54,4 @@ dkms.conf
salida.srt
.gitignore
cc2srt
out/

BIN
cc2srt

Binary file not shown.

View File

@ -7,12 +7,37 @@ struct entrada_cc{
char texto[255];
};
struct tiempo_srt{
int hora;
int minuto;
int segundo;
};
struct salida_srt{
int index;
struct tiempo_srt inicio;
struct tiempo_srt fin;
char texto[255];
};
int LeerEntrada(struct entrada_cc *ent, FILE *fentrada){
if (fscanf((FILE *)fentrada, "%d:%d\n", &ent->minutos, &ent->segundos) < 1) {
printf("fscanf devuelve 0\n");
return 0;
}
fgets(ent->texto, 255, (FILE *)fentrada);
return 1;
}
int main(int argc, char **argv) {
FILE *entrada;
FILE *salida;
char cadena [255];
struct entrada_cc ent1;
struct entrada_cc ent1, ent2, *pent1, *pent2;
struct salida_srt sal1, sal2, *psal1, *psal2;
int i = 0;
for(i = 0; i < argc; i++){
@ -35,12 +60,11 @@ int main(int argc, char **argv) {
}
printf("Procesando fichero %s.\n", argv[1]);
fgets(cadena, 256, (FILE *) entrada);
while(fscanf((FILE *)entrada, "%d:%d\n", &ent1.minutos, &ent1.segundos) > 0) {
printf("Minutos: %d, Segundos: %d\n", ent1.minutos, ent1.segundos);
sprintf(cadena, "%d:%d", ent1.minutos, ent1.segundos);
fputs(cadena, (FILE *) salida);
fgets(ent1.texto, 255, (FILE *)entrada);
sprintf(cadena, " %s", ent1.texto);
ent2.minutos = -1;
pent1 = &ent1;
while(LeerEntrada(pent1, (FILE *)entrada) > 0) {
printf("Minutos: %d, Segundos: %d\n", pent1->minutos, pent1->segundos);
sprintf(cadena, "%d:%d --> \n%s\n", pent1->minutos, pent1->segundos, pent1->texto);
fputs(cadena, (FILE *) salida);
printf(cadena);
}