Diferencia entre revisiones de «Archivos»
Ir a la navegación
Ir a la búsqueda
Sin resumen de edición |
Sin resumen de edición |
||
| Línea 4: | Línea 4: | ||
<pre> | <pre> | ||
#include <iostream> | #include <iostream> | ||
#include <stdio.h> | #include <stdio.h> //Libreria donde estan implementadas las funciones de archivos | ||
int main(void){ | int main(void){ | ||
FILE *archivo; | FILE *archivo; //Puntero de tipo archivo | ||
char nombre[] = "datos.txt"; | char nombre[] = "datos.txt"; | ||
archivo = fopen(nombre, "w"); | archivo = fopen(nombre, "w"); //Función para abrir el fichero | ||
if(archivo){ | if(archivo){ //Si el fichero no se ha podido abrir contendra NULL | ||
fprintf(archivo, "%s \n", "Hola que tal"); | fprintf(archivo, "%s \n", "Hola que tal"); //Funcion para escribir en el fichero | ||
fclose(archivo); | fclose(archivo); //Cerrar el fichero al acabar | ||
} | } | ||
} | } | ||
| Línea 32: | Línea 32: | ||
if(archivo){ | if(archivo){ | ||
fscanf(archivo, " %[^\n]", &frase); | fscanf(archivo, " %[^\n]", &frase); //Función para leer del archivo. %[^\n] con esto se lee hasta el final de la frase no como con %s que lee hasta el espacio entre palabras | ||
while(!feof(archivo)){ | while(!feof(archivo)){ //La función feof devuelve 0 mientras no se llega al final del archivo | ||
printf("%s\n", frase); | printf("%s\n", frase); | ||
fscanf(archivo, " %[^\n]", &frase); | fscanf(archivo, " %[^\n]", &frase); | ||
| Línea 59: | Línea 59: | ||
Modos de apertura de un fichero: | Modos de apertura de un fichero: | ||
<pre> | |||
r Abre un fichero existente para lectura. | r Abre un fichero existente para lectura. | ||
w Crea un fichero nuevo (o borra su contenido si existe) y lo abre para escritura. | w Crea un fichero nuevo (o borra su contenido si existe) y lo abre para escritura. | ||
| Línea 74: | Línea 74: | ||
w+ - Crea (o lo borra si existe) un fichero para lectura y escritura. | w+ - Crea (o lo borra si existe) un fichero para lectura y escritura. | ||
rt - Abre un archivo existente en modo texto para lectura. | rt - Abre un archivo existente en modo texto para lectura. | ||
</pre> | |||
Revisión del 15:11 8 mar 2013
Características
Abrir un archivo
Escribir en archivo
#include <iostream>
#include <stdio.h> //Libreria donde estan implementadas las funciones de archivos
int main(void){
FILE *archivo; //Puntero de tipo archivo
char nombre[] = "datos.txt";
archivo = fopen(nombre, "w"); //Función para abrir el fichero
if(archivo){ //Si el fichero no se ha podido abrir contendra NULL
fprintf(archivo, "%s \n", "Hola que tal"); //Funcion para escribir en el fichero
fclose(archivo); //Cerrar el fichero al acabar
}
}
Leer de archivo
#include <iostream>
#include <stdio.h>
int main(){
FILE *archivo;
char nombre[]="datos.txt";
char frase[80];
archivo = fopen(nombre, "r");
if(archivo){
fscanf(archivo, " %[^\n]", &frase); //Función para leer del archivo. %[^\n] con esto se lee hasta el final de la frase no como con %s que lee hasta el espacio entre palabras
while(!feof(archivo)){ //La función feof devuelve 0 mientras no se llega al final del archivo
printf("%s\n", frase);
fscanf(archivo, " %[^\n]", &frase);
}
fclose(archivo);
}
}
Listado funciones-explicacion de cada una
fopen
Fprintf
Fscanf
Fclose
Fputs
Fgets
Fputc
Fgetc
Poner un ejemplo de lectura y escritura de un archivo completo
Modos de apertura de un fichero:
r Abre un fichero existente para lectura.
w Crea un fichero nuevo (o borra su contenido si existe) y lo abre para escritura.
a Abre un fichero (si no existe lo crea) para escritura. El puntero se sitúa al final del archivo, de forma que se puedan añadir datos si borrar los existentes.
Se pueden añadir una serie de modificadores siguiendo a los modos anteriores:
b Abre el fichero en modo binario.
t Abre el fichero en modo texto.
+ Abre el fichero para lectura y escritura.
Ejemplos de combinaciones:
rb+ - Abre el fichero en modo binario para lectura y escritura.
w+ - Crea (o lo borra si existe) un fichero para lectura y escritura.
rt - Abre un archivo existente en modo texto para lectura.