Como te dijo lareto gran maestro, esta muy bien. =)
Yo haría algo así:
Código C:
Ver original#include <stdio.h>
#include <string.h>
typedef struct {
char marcado;
char ingles[30];
char espaniol[30];
} Traductor;
int main (){
FILE * f;
f
= fopen( "prueba.txt", "w+" ); if ( f == NULL ){
return 1;
}
//preparamos una estructura
Traductor t[5] = {
{ '+', "door", "puerta"},
{ '+', "window", "ventana"},
{ '+', "rueda", "wheel"},
{ '+', "main", "principal"},
{ '+', "out", "salida"}
};
//grabamos en el fichero la estructura
int i;
for ( i = 0; i < 5; i++ ){
fprintf( f
, "%c %-30s %-30s\n",t
[i
].
marcado, t
[i
].
ingles,t
[i
].
espaniol );
}
//volvemos a leer y sacamos lo leido por pantalla
Traductor temp;
for ( i = 0; i < 5; i++ ){
fscanf( f
, /*note el espacio antes de %c y lea el comentario->*/" %c %s %s",&temp.
marcado, temp.
ingles, temp.
espaniol ); // el espacio inicial en la cadena de formato ignora leer el enter que grabamos anteriormente con fprintf para que cada estructura se guarde una abajo de otra y no todas seguidas XD printf("%c %s %s\n",temp.
marcado, temp.
ingles, temp.
espaniol); }
return 0;
}
Así tienes hasta mas control en el formato de lo que va a salir en el fichero. Por ejemplo note que cada linea ahora es una estructura.