06.05.2013 Views

CONTENIDO DE LA LECCIÓN 8

CONTENIDO DE LA LECCIÓN 8

CONTENIDO DE LA LECCIÓN 8

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

MIGUEL Á. TOLEDO MARTÍNEZ<br />

apertura de archivo puede ser ios::out para enviar los datos hacia el archivo o ios::app para agregar<br />

datos al final del archivo. Los archivos existentes que se abren con el modo ios::out se truncan. Los<br />

archivos que no existen se crean.<br />

La función miembro de operador operator! de ios devuelve un valor diferente de cero (true) si se ha<br />

establecido el indicador failbit o badbit para un flujo en la operación open.<br />

La función miembro de operador operator void * de ios convierte el flujo hacia un apuntador para<br />

compararlo con 0 (el apuntador nulo) Si no se han establecido ni failbit ni badbit para el flujo, se<br />

devuelve 0 (false)<br />

Los programas pueden procesar ningún archivo, un archivo o varios archivos. Cada archivo tiene un<br />

nombre único y está asociado con un objeto de flujo de archivo adecuado. Todas las funciones de<br />

procesamiento de archivo deben referirse a un archivo mediante el objeto adecuado.<br />

Un apuntador obtener indica la posición del archivo a partir de la cual va a suceder la siguiente<br />

entrada, y un apuntador colocar indica la posición del archivo en la cual se colocará la siguiente<br />

salida. Las clases istream y ostream proporcionan funciones miembro para reubicar el apuntador de<br />

posición de archivo. Las funciones son seeg() (buscar obtener) para la clase istream, y sep() (buscar<br />

colocar) para la clase ostream.<br />

Las funciones miembro tellp() y tellg() devuelven las localidades actuales de los apuntadores colocar<br />

y obtener, respectivamente.<br />

Una forma conveniente para implementar los archivos de acceso aleatorio es utilizar solamente<br />

registros de longitud fija. Mediante el uso de esta técnica un programa puede calcular rápidamente la<br />

localidad exacta de un registro con relación al inicio del archivo.<br />

Los datos se pueden insertar en un archivo de acceso aleatorio sin destruir otros datos del archivo. Los<br />

datos se pueden actualizar o borrar sin volver a escribir el archivo completo.<br />

La función miembro write() de ostream da salida, hacia un flujo especificado, a un número de bytes<br />

que comienzan en una localidad de memoria indicada. Cuando el flujo está asociado con un archivo,<br />

los datos se escriben en la localidad especificada por el apuntador de posición de archivo colocar.<br />

La función miembro read() de istream introduce un número de bytes desde el flujo especificado hacia<br />

un área en memoria que comienza en una dirección indicada. Los bytes se introducen comenzando en<br />

la localidad especificada por el apuntador de posición de archivo obtener.<br />

La función write() espera un primer argumento de tipo const char *, por lo que este argumento se debe<br />

convertir mediante cast a un const char *, en caso de que sea de algún otro tipo de apuntador. El<br />

segundo argumento es un entero que especifica el número de bytes a escribir.<br />

El operador unario sizeof() de tiempo de compilación devuelve el tamaño en bytes del objeto que está<br />

contenido entre paréntesis, sizeof() devuelve un entero sin signo.<br />

La función miembro read()e istream introduce un número especificado de bytes desde el flujo<br />

indicado hacia un objeto, read() requiere un primer argumento de tipo char *.<br />

La función miembro eof() de ios determina si se ha establecido el marcador de fin de archivo para el<br />

flujo indicado. El fin de archivo se establece después de que falla un intento de lectura.<br />

FUNDAMENTOS – <strong>LECCIÓN</strong> 7 7-61

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!