La Musica

Páginas: 5 (1070 palabras) Publicado: 28 de noviembre de 2012
Flujos
Un archivo en C cuando se abre se le asocia un flujo, eso significa que C ve el archivo como una secuencia de byte, que al final tiene una marca llamada Marcador de fin de Archivo.
ARCHIVOS ALEATORIOS EN C
En los próximos párrafos voy a explicar cómo se manipulan en un programa en C los archivos de acceso aleatorio.
El puntero File
Para poder manipular archivos en C, es necesariotener una variable del tipo de estructura File. Para declarar una variable de tipo File se procede así: File *nombrePunteroFile;
Ejemplo En el código del programa ArchivoAleatorio.c que se anexa al final de este documento, se declara una variable de tipo puntero a una estructura File así.
FILE *ptroArchivo;
Apertura de un archivo aleatorio
Para poder tener acceso a un archivo, esto es poderescribir, leer o modificar información, se hace necesario abrir el archivo. Esto se hace posible mediante la función fopen, la cual devuelve un puntero a una estructura File.
El uso más general de la función se presenta en la siguiente sintaxis: ptroArchivo=fopen(“nombre del archivo”,”modo”)
Donde el nombre del archivo, es el identificador del archivo en el disco.
El modo es una letra, con la queen C se indica para que se abra el archivo, para los archivos aleatorios se tiene los siguientes modos
Modo Cuando se usa
Wb Se utiliza para abrir un archivo de tipo binario, con acceso aleatorio, este modo se utiliza cuando se quiere crear un archivo para escritura. Si se utiliza esta opción para abrir un archivo que ya existe el archivo se borra y se perderá la información en el.
AbSe utiliza para abrir un archivo binario, para agregar información al final del archivo.
Rb Se utiliza para abrir un archivo para lectura en modo binario.

Después de escribir el código que abre un archivo el programado debe validar que el puntero no tenga el valor NULL, si esto llega a ocurrir durante la ejecución de un programa eso quiere decir que el archivo no ha sido posibleabrirlo.
Ejemplo: El siguiente código muestra como se abre el archivodatosSecuencia.dat, en el programa archivosAleatorios.c y se guarda en el unas estructuras con información de amigos.
En la siguiente instrucción se abre para crearlo y escribir en el archivo por primera vez.
ptroArchivo=fopen("C:\\LenguajeC\\datosSecuencia.dat","ab")En la siguiente instrucción se abre para leer lainformación.ptroArchivo=fopen("C:\\LenguajeC\\datosSecuencia.dat","rb")
Escritura en un archivo aleatorio
Una vez que el archivo ha sido abierto se puede grabar lainformación al disco, para ello hay que usar la función fwrite.Dicha instrucción se usa de la siguiente manera:

Fwrite(dirección memoria variable,sizeof(tipo de dato a grabar),cantidad,ptroArchivo);
Donde:
Dirección memoria variable: es ladirección donde se encuentra la variable que contiene lo que se quiere grabar en el disco.
Tipo de dato a grabar: es el tipo de dato de la variable que se va a escribir en el disco
Cantidad: es el numero de datos de ese tipo que se van a escribir en el archivo
Ejemplo: El siguiente código muestra como se graba en el archivodatosSecuencia.dat cada una de las estructuras almacenadas en un vector.For(i=0,i<n;i++){
Fwrite(&z[i],sizeof(parse),1,ptroArchivo);
}

Leer los datos de un archivo aleatorio
Para leer los datos de un archivo de acceso aleatorio se puede hacer de manera secuencial, leyendo uno por uno, o de manera aleatoria. En los dos casos se usa
fread
La función tiene la siguiente sintaxis:
Fread(dirección memoria variable,sizeof(tipo de dato aleer),cantidad,ptroArchivo);
Donde:
Dirección memoria variable: es la dirección donde se encuentra la variable que contiene lo que se quiere grabar en el disco.
Tipo de dato a grabar: es el tipo de dato de la variable que se va a escribir en el disco
Cantidad: es el numero de datos de ese tipo que se van a escribir en el archivo
Ejemplo: El siguiente código lee de manera secuencia todos los datos en un...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Musica musica
  • Musica
  • Musica
  • La musica
  • Musica
  • Musica
  • Musica
  • Musica

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS