FILE Fstream en c++ PDF

Title FILE Fstream en c++
Course Fundamentos de la programacion
Institution Universidad de las Fuerzas Armadas de Ecuador
Pages 18
File Size 1.2 MB
File Type PDF
Total Downloads 44
Total Views 157

Summary

Ejercicios y teoría ...


Description

CARRERA: INGENIERIA EN TECNOLOGIAS DE LA INFORMACIÓN Y COMUNICACIÓN

TEMA: PROGRAMACIÓN ESTRUCTURADA

Profesor: MARGOTH GUARACA

NIVEL: SEGUNDO “B”

ESTUDIANTES: DAYAN PUETATE

FECHA: 20/01/2019

SANTO DOMINGO – ECUADOR

Tema: PUNTEROS A ESTRUCTURAS DINAMICAS (NEW Y DELETE) y MANEJO DE FICHEROS EN C++ 1)

Resumen

C++ define la estructura de datos FILE en el fichero de cabecera stdio.h para el manejo de ficheros. Nosotros siempre usaremos punteros a estas estructuras. Las estructuras son colecciones de variables relacionadas bajo un nombre. Las estructuras pueden contener variables de muchos tipos diferentes de datos - a diferencia de los arreglos que contienen únicamente elementos de un mismo tipo de datos. El operador new sirve para reservar memoria dinámica y el operador delete se usa para liberar la memoria dinámica reservada con new.

Objetivos a. Objetivos Específicos i. ii.

2)

Realizar informe de investigación de manejo de archivos en C++, lectura y escritura. Informe de la tarea de punteros a estructuras, ingreso, mostrar en funciones.

Desarrollo

FUNCION *FILE C++ define la estructura de datos FILE en el fichero de cabecera stdio.h para el manejo de ficheros. Nosotros siempre usaremos punteros a estas estructuras. La definición de ésta estructura depende del compilador, pero en general mantienen un campo con la posición actual de lectura/escritura, un buffer para

mejorar las prestaciones de acceso al fichero y algunos campos para uso interno. Función fopen:

Sintaxis

Esta función sirve para abrir y crear ficheros en disco. El valor de retorno es un puntero a una estructura FILE. Los parámetros de entrada son: Nombre: una cadena que contiene un nombre de fichero válido, esto depende del sistema operativo que estemos usando. El nombre puede incluir el camino completo. Modo: especifica en tipo de fichero que se abrirá o se creará y el tipo de datos que puede contener, de texto o binarios: r: sólo lectura. El fichero debe existir. w: se abre para escritura, se crea un fichero nuevo o se sobreescribe si ya existe. a: añadir, se abre para escritura, el cursor se situa al final del fichero. Si el fichero no existe, se crea. r+: lectura y escritura. El fichero debe existir. w+: lectura y escritura, se crea un fichero nuevo o se sobreescribe si ya existe. a+: añadir, lectura y escritura, el cursor se situa al final del fichero. Si el fichero no existe, se crea. t: tipo texto, si no se especifica "t" ni "b", se asume por defecto que es "t" b: tipo binario.

Función fclose: Sintaxis

Es importante cerrar los ficheros abiertos antes de abandonar la aplicación. Esta función sirve para eso. Cerrar un fichero almacena los datos que aún están en el buffer de memoria, y actualiza algunos datos de la cabecera del fichero que mantiene el sistema operativo. Además permite que otros programas puedan abrir el fichero para su uso. Muy a menudo, los ficheros no pueden ser compartidos por varios programas. Un valor de retorno cero indica que el fichero ha sido correctamente cerrado, si ha habido algún error, el valor de retorno es la constante EOF. El parámetro es un puntero a la estructura FILE del fichero que queremos cerrar.

Entrada/Salida de archivos (fstream.h) El archivo de cabecera fstream.h define las clases ifstream, ostream y fstream para operaciones de lectura, escritura y lectura/escritura en archivos respectivamente. Para trabajar con archivos debemos crear objetos de éstas clases de acuerdo a las operaciones que deseamos efectuar. Empezamos con las operaciones de escritura, para lo cual básicamente declaramos un objeto de la clase ofstream, después utilizamos la función miembro open para abrir el archivo, escribimos en el archivo los datos que sean necesarios utilizando el operador de inserción y por último cerramos el archivo por medio de la función miembro close.

Modos de apertura de archivo Al especificar la apertura de un archivo como se ha mostrado en los programas anteriores, el programa sobrescribe cualquier archivo existente llamado Datos.txt en el directorio de trabajo del programa. Dependiendo del propósito del programa es posible que sea necesario agregar datos a los ya existentes en el archivo, o quizá sea necesario que las operaciones del programa no se lleven a cabo en caso de que el archivo especificado exista en el disco, para

éstos casos podemos especificar el modo de apertura del archivo incluyendo un parámetro adicional en el constructor, cualquiera de los siguientes:



ios::app Operaciones de añadidura.



ios::ate Coloca el apuntador del archivo al final del mismo.



ios::in Operaciones de lectura. Esta es la opción por defecto para objetos de la clase ifstream.



ios::out Operaciones de escritura. Esta es la opción por defecto para objetos de la clase ofstream.



ios::nocreate Si el archivo no existe se suspende la operación.



ios::noreplace Crea un archivo, si existe uno con el mismo nombre la operación se suspende.



ios::trunc Crea un archivo, si existe uno con el mismo nombre lo borra.



ios::binary Operaciones binarias

Declaración de variables tipo fichero.

Apertura y cierre Modos de apertura: lectura, escritura, lectura/escritura, añadir al final En C++ se abren los ficheros con “open”, p.ej.:

Si el nombre del fichero es un string debemos convertirlo con la función c_str().

Ejemplo: Ponerle nombre a un archivo.

EJECUCION

Ejemplo 2. Escritura en un archivo asignando una dirección

Ejemplo 3. Como leer un archivo

1. Ejercicio de puntero a la estructura Fecha.

CODIGO

EJECICION

2. Ejercicio Puntero a estructura de Alumnos.

CODIGO

EJECUCION

3. Ejercicio de Puntero a estructura datos del empleado. CODIGO

EJECUCION

3) Conclusiones En la asignación dinámica de memoria reserva de memoria se realiza dinámicamente en tiempo de ejecución, no siendo necesario entonces tener que especificar en la declaración de variables la cantidad de memoria que se va a requerir. Así evitamos el desperdicio de memoria ya que separa directamente del disco. A diferencia de los arrays en los que solo puedes definir variables del mismo tipo, las estructuras nos permiten trabajar con varios tipos de datos al mismo tiempo y también podemos trabajarla usando punteros.+ El uso de ficheros es muy útil ya que normalmente al cerrar nuestro programa los datos que ingresamos durante la ejecución no se guardan en ningún lugar y al cerrar estos se pierden y si queremos hacer uso de esos datos ya no los tenemos disponibles. Al usar ficheros podemos almacenar la información en archivos por ejemplo .txt los cuales se crean en el disco. Podemos crearlos, podemos escribir en ellos y leer lo que contienen con algunas funciones que nos proporciona la librería . 4)

Recomendaciones

Siempre que trabajemos con espacios tomados de la memoria es importante liberar la memoria. La manera correcta de asignar un valor a un puntero en una estructura es con este símbolo “-> “.

Si queremos trabajar con ficheros debemos crear un control para ver si se puede acceder , crear o leer el fichero, etc. 5)

Bibliografía.

https://www.fing.edu.uy/inco/cursos/prog3/utils/Punteros.pdf file:///C:/Users/HP/Downloads/PRESENTACIONES_UNIDAD_III_ARRAYS_P UNTEROS_MEMORIA%20(1).pdf https://www.fing.edu.uy/tecnoinf/mvd/cursos/prinprog/material/teo/prinprogteorico08.pdf http://c.conclase.net/curso/?cap=013b http://c.conclase.net/curso/?cap=013b http://www.programacionenc.net/index.php?option=com_content&view=article &id=69:manejo-de-archivos-en-c&catid=37:programacion-cc&Itemid=55 https://www.dlsi.ua.es/assignatures/p2/downloads/1314/teoria/es/t3-files-esver.pdf 6) -

Anexos Adjunto archivos cpp...


Similar Free PDFs