Problema: Como abrir, leer/escribir en un archivo con C?
Variante: C
Solucion:
Código:
#include<stdio.h>
int main(int argc, char *argv[])
{
FILE *archivo;/*El manejador de archivo*/
archivo=fopen("nombre_del_archivo.txt", "w");
if(archivo==NULL)/*So no lo logramos abrir, salimos*/
return 1;
fprintf(archivo, "Hola, mundo\n");/*Escribimos en el archivo*/
fclose(archivo);/*Cerramos el archivo*/
return 0;
}
archivo=fopen....
el primer argumento puede ser cualquier nombre..
dibujo.bmp
documento.doc
.
.
El segundo argumento indica la forma en que vamos a abrir el archivos:
Para modo texto:
"r" Solo para leer(Ya existe el archivo)
"w"Para escribir en un archivo(si no existe, lo crea).
"a"Abre o crea un archivo y le agrega informacion al final de este en vez de al principio.
Para modo binario se usa lo smimo bero con un +b:
"a+b"
"w+b".
Por ultimo.
Para escribir en un archivo se pueden utilizar varias funciones al igual que para leer de este:
Lectura:
int fgetc(FILE *archivo); /*Lee un caracter*/
char *fgets(char *s, int n, FILE *archivo);//lee hasta n-1 caracteres y los pone en s que debe ser un arreglo.
int getc(FILE *archivo);//Lo mismo que fgetc
size_t fread(void *puntero, size_t t, size_t n, FILE *archivo);//Lee un bloque de t elementos de n tamaño cada uno.
int fscanf(FILe* archivo, const char *format, ...); //Funciona como scanf.
Escritura
int fputc(int c, FILE *archivo);
int fputs(const char *s, FILE *archivo);
int putc(int c, FILE *archivo);
int puts(const char *s);
int fprintf(FILE *archivo, const char *formato, ...);
Nunca olvides cerrar el archivo con fclose:
int fclose(FILE *archivo);