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