alfa.0.1. Lectura del fichero de entrada.
This commit is contained in:
parent
d83ab0db36
commit
ee44ca5a5f
|
@ -52,3 +52,5 @@ Module.symvers
|
|||
Mkfile.old
|
||||
dkms.conf
|
||||
|
||||
salida.srt
|
||||
.gitignore
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
#Conversor de Closed Captions a SubRib
|
||||
Los subtítulos autogenerados de Google se pueden descargar pero su formato
|
||||
no es estándar y no se reconoce por los reproductores que utilizo (al menos VLC
|
||||
no lo hace) así que esta es una utilidad para convertirlos al formato srt que es
|
||||
universal.
|
|
@ -0,0 +1,51 @@
|
|||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
struct entrada_cc{
|
||||
int minutos;
|
||||
int segundos;
|
||||
char texto[255];
|
||||
};
|
||||
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
FILE *entrada;
|
||||
FILE *salida;
|
||||
char cadena [255];
|
||||
struct entrada_cc ent1;
|
||||
|
||||
int i = 0;
|
||||
for(i = 0; i < argc; i++){
|
||||
printf("El argumento en la posición %d es %s\n", i, argv[i]);
|
||||
}
|
||||
if (argc < 2) {
|
||||
printf("Uso: %s <nombre de fichero a convertir>.\n", argv[0]);
|
||||
return(3);
|
||||
}
|
||||
entrada = fopen(argv[1], "rt");
|
||||
if (entrada == NULL) {
|
||||
printf("El fichero %s no se ha podido abrir.\n", argv[1]);
|
||||
return(1);
|
||||
}
|
||||
salida = fopen("salida.srt", "w");
|
||||
if (salida == NULL) {
|
||||
printf("El fichero %s no se ha podido abrir.\n", argv[1]);
|
||||
fclose(entrada);
|
||||
return(2);
|
||||
}
|
||||
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);
|
||||
fputs(cadena, (FILE *) salida);
|
||||
printf(cadena);
|
||||
}
|
||||
|
||||
fclose(entrada);
|
||||
fclose(salida);
|
||||
return(0);
|
||||
}
|
Loading…
Reference in New Issue