Pregunta:
¿Cómo puedo hacer para guardar en un archivo un texto completo en lenguaje C ?
Metalfab
2011-08-19 07:26:30 UTC
Estoy usando dev c++ como compilador, quiero que mi programa lea un texto que yo le ingrese y lo guarde como cadena pero resulta que solo me guarda hasta que doy un espacio, por ejemplo, si ingreso "hola como estas", se guarda el texto con la palabra "hola" y mas nada.. mi codigo hasta ahora es el siguiente:
#include
#include
main() {
char cadena [100];
FILE*pf;
pf=fopen("texto.txt");
printf("Ingrese un texto para guardar en un archivo \n")
scanf("%s", cadena);
fprintf("%s", cadena);
fclose(pf);
}
en que estoy errando??? un saludo!!
Tres respuestas:
aem
2011-08-19 08:21:19 UTC
Hola:

Esl scanf y el cin tienen esas cosas, y otras mas que complican los programas cuando se usan strings, y aunque hay forma de corregirlo para que lea hasta el enter,

scanf("%[^\n]", & cadena);

pero tambien tiene problemas con el buffer del teclado, por lo que hay que usar fflush(stdin) para que el enter no dispare otro procedimiento, y como no vale la pena renegar, por eso es mas conveniente el uso de gets(cadena); de la libreria stdio.h

Remplaza esta linea y tiene que andar.



Dios te bendiga

Saludos

Antonio
anonymous
2011-08-19 15:47:24 UTC
Hola!!



Por ahí tenías unos errores, por ejemplo, qui:



printf("Ingrese un texto para guardar en un archivo \n")



Te falta el ; (Punto y coma).



Aquí tienes el código en C:



Código:





#include

#include

int main()

{

char cadena[100];

FILE *pf;

pf = fopen("texto.txt","w");

printf("Ingrese un texto para guardar en un archivo \n");

gets(cadena);

fprintf(pf,"%s", cadena);

fclose(pf);

}





El archivo .txt quedará guardado en la misma carpeta dónde este gurdado el programa.



Espero te sirva, saludos ^^
?
2011-08-19 15:36:57 UTC
FILE *pf;

pf = fopen("archivo_x.txt","w");

fprintf(pf,"linea 1\n");

fprintf(pf,"linea 2\n");

fprintf(pf,"linea 3\n");

fclose(pf);


Este contenido se publicó originalmente en Y! Answers, un sitio web de preguntas y respuestas que se cerró en 2021.
Loading...