Asignatura: Lenguaje de Programación de Sistemas PPT No.05 Programa vespertino de Ingeniería (E) en Sistemas Computacionales Profesor: José Estay Araya.

Slides:



Advertisements
Presentaciones similares
Manejo de archivos.
Advertisements

ESTRUCTURAS DE CONTROL
Tema #10. FICHEROS.
FICHEROS.
Instrucciones Básicas Entrada de Información
Manejo de archivos.
MANUAL EXPRESS DE C J.M.sevilla.
CAPITULO I. ARREGLOS Un arreglo es un grupo de posiciones en memoria relacionados entre si, por el hecho de que todas tienen el mismo nombre y son del.
Repaso para la construcción del intérprete 2012
Universidad Domingo Savio Facultad de Ciencias y Tecnología de la Información Carrera Ingeniería en Redes y Telecomunicaciones Materia : Programación I.
Fundamentos de la Programación Estructurada
Programacion de Computadora Prof. Obadiah Oghoerore.
Programación I Teoría IX: Entrada/Salida
Programación, Algoritmos y Estructuras de Datos
Estructuras externas de Datos: Archivos
Funciones. Programación, Algoritmos y Estructuras de Datos.
INFORMATICA I Arreglos 2 CLASE 18.
INFORMATICA I Funciones CLASE 13.
Aprende C en una lluviosa tarde de domingo (en algo más de un par de horas) Sintaxis del lenguaje C para implementar un programa imperativo.
Programación en Lenguaje Ensamblador.
Unidad 3 Punteros.
Herramientas para el acceso directo a memoria en C++
String o Cadenas Prof. Gonzalo Pastor. Cadenas o String ► En C, una cadena o texto se define como un vector de caracteres de longitud determinada que.
Archivos Contenido: Archivos de Texto Archivos de Acceso Aleatorio
Programación Científica
Funciones y procedimientos
Almacenamiento y Recuperación de la Información 2do Semestre 2005 Wenceslao Palma M.
Unidad I Java y C++ : Similitudes y diferencias
Programa “Coordenadas” Ing. Arturo Díaz Vargas Departamento de Sistemas División de Ciencias Básicas e Ingeniería UNIVERSIDAD AUTONOMA METROPOLITANA.
Tema 3 Entrada y Salida.
Archivos Programación.
Informática Ingeniería en Electrónica y Automática Industrial
Archivos. fopen(...) Para comenzar a utilizar un archivo primero se debe abrir, invocando a la función fopen(...) FILE * fopen(char* nombre_arch, char*
PROGRAMACION II.  Es un conjunto de datos no necesariamente del mismo tipo, los cuales se podrán manipular o realizar cualquier operación sobre cada.
Características de “C”
Características de “C” Y Esta conformado por un Ambiente Integrado. Y Es un Lenguaje de Nivel medio. Y Es un compilador. YContiene un conjunto de palabras.
Cadenas y apuntadores Programación.
Arreglos.
Archivos Binarios Lenguaje C Prof. Gonzalo Pastor.
Archivos.
Estructuras-Archivos
Programación I Teoría VIII: Entrada/Salida
TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para.
Informática Ingeniería en Electrónica y Automática Industrial
El lenguaje de programación C - Identificadores y variables – Isidro González Caballero ( Introducción.
Manejo de archivos de datos en C
PROGRAMACION DE ARCHIVOS (MEMORIA SECUNDARIA). Registros y archivos Si bien es cierto que se pueden manejar gran cantidad de datos del mismo y diferente.
Introducción Entrada/Salida L.P.S.I.
Programación en Lenguaje C
Archivos Programación I MC Beatriz Beltrán Martínez.
Introducción Lenguaje de Programación ING2101 SECC Ayud. Ariel Fierro Sáez.
Entrada y salida Gestión de ficheros.
Asignatura: Lenguaje de Programación de Sistema PPT No.01
Teoría de Sistemas Operativos Administración de Archivos.
PROGRAMACIÓN MULTIMEDIA
Asignatura: Lenguaje de Programación de Sistema 2014 PPT No. 03 Programa vespertino de Ingeniería (E) en Sistemas Computacionales Profesor: José Estay.
CARACTERÍSTICAS Es un lenguaje de programación estructurado de propósito general. Está estrechamente asociado al sistema operativo UNIX, ya que el propio.
Estructuras Una estructura es una colección de datos de diferente tipo. Se construye en dos pasos: 1- Creación del esqueleto de la estructura 2.- Colocación.
LENGUAJE “C” Programación.
Computación I. CI-2125 Tema VIII
Arreglos: Vectores Prof. Flor Narciso Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes.
Repaso de archivos #include int main(void) { FILE *fp; fp=fopen(“prueba.txt”, “w”); if (fp==NULL) { printf(“Error al abrir el archivo\n”); printf(“No lo.
Clase 1 Gabriela Araya Baez.. Char: Variable que almacena caracteres. Int: Variable que almacena enteros. Float: Variable que almacena decimales. Doble:
TIPOS DE DATOS Estructuras de control y repetición PARCIAL III.
PARCIAL 3. CADENAS Y CARACTERES PARA PODER DISTINGUIR LOS DATOS DE TIPO CARACTER (CHAR), ESTOS SE ENCIERRAN EN COMILLAS SIMPLES. LOS DATOS DE TIPO CARÁCTER.
OBJETIVOS DEFINIR LA ESTRUCTURA DE ARREGLOS. DECLARAR ARREGLOS EN C.
Visual Basic Prof.: Carol Briones García. Uso de Archivos  Definición  Es un conjunto de información que se almacena en algún medio de escritura que.
Archivos. Introducción Los datos que hemos tratado hasta el momento han residido en la memoria principal. Sin embargo, las grandes cantidades de datos.
Computación I :: Prof. Yeniffer Peña Lenguaje C Presentación Computación I.
Programación en C - manejo de Archivos
Transcripción de la presentación:

Asignatura: Lenguaje de Programación de Sistemas PPT No.05 Programa vespertino de Ingeniería (E) en Sistemas Computacionales Profesor: José Estay Araya Sitio de la asignatura: User: sist2014 psw: sist#C10

Administración de archivos: FAT NTFS C++ provee de las funciones necesarias para escribir y leer archivos

Dispositivos de almacenamiento de datos, en memoria secundaria(discos magnéticos, memorias flash) La administración de archivos se maneja bajo modalidad FAT o NTFS C provee las funciones necesarias para escribir o leer archivos en memoria secundaria

E/S de disco (memoria 2aria.) Condiciones de archivos de disco 1El archivo de disco no existe y se quiere crearlo y añadir información 2El archivo de disco existe y se quiere extraer información de él 3El archivo de disco existe y se quiere añadir más información, conservando la información que ya estaba en él. 4El archivo de disco existe y se quiere borrar la información, y agregar información nueva.

Distintos métodos de lectura y escritura de datos Un carácter a la vezLee y escribe a memoria 2aria. Un carácter a la vez Leer y escribir cadenas de caracteres Lee y escribe a memoria 2aria. Cadenas de caracteres. Método mixtoE/S de caracteres, cadenas de caracteres, reales y enteros Método de estructura de bloques E/S de vectores y estructuras

Distintos métodos de …(cont.) Para todos los casos se usan las siguientes funciones: FILE *puntero fopen(nombre_archivo, modo de operación) fclose(puntero a archivo)

Distintos métodos de …(cont.) Un carácter a la vez o cada vez TXT Lee y escribe a memoria 2aria. Un carácter a la vez putc() //para escribir; getche() //para leer Leer y escribir cadenas de caracteres TXT Lee y escribe a memoria 2aria. Cadenas de caracteres. putc() //para escribir; getc() //para leer Método mixto MIX E/S de caracteres, cadenas de caracteres, reales y enteros fprintf(); fscanf() Método de estructura de bloques BIN E/S de vectores y estructuras fread(); fwrite

Distintos métodos de …(cont.) Acceso Random Se utiliza la función fseek(p,d,m ) la cual tiene 3 argumentos: p: puntero a archivo, d: desplazamiento, m: modo Modo puede tomar 3 valores SEEK_SET(0)  desplazamiento desde el inicio SEEK_SET(1)  desplazamiento desde posición actual SEEK_SET(2)  desplazamiento desde el final del archivo

Archivos de texto frente a binarios Incide en el rendimiento de la transferencia de los datos. Por ejemplo, se tiene el siguiente número entero: Si almacenamos el número como texto  8 bytes Si almacenamos binario BC614E  3 bytes Por lo cual el ahorro de espacio es considerable

Operaciones sobre archivos “a”Abierto para añadir datos. Los datos se añaden al final del archivo o se crea un archivo nuevo si no existe. “r”Abierto para lectura. El archivo debe existir “w”Abierto para escritura. Los datos son escritos desde el principio, o se crea un nuevo archivo si no existe.

“a+” Abierto para lectura y añadir datos. Si el archivo no existe, se crea. “r+” Abierto para lectura y escritura. El archivo debe existir. “w+” Abierto para lectura y escritura. Se escribe desde el principio del archivo Operaciones sobre archivos(Cont)

“a+” Abierto para lectura y añadir datos. Si el archivo no existe, se crea. “r+” Abierto para lectura y escritura. El archivo debe existir. “w+” Abierto para lectura y escritura. Se escribe desde el principio del archivo Operaciones sobre archivos(Cont)

Ejemplo: escritura de un archivo binario #include "stdafx.h" #include typedef struct { char nombre_pieza[15]; /* Tipo de pieza. */ int cantidad; /* Número de piezas. */ float precio_unitario; /* Precio de cada pieza. */ } tipo_pieza; int _tmain(int argc, _TCHAR* argv[]) { tipo_pieza pieza; /* Variable de tipo tipo_pieza. */ FILE *puntero_a_archivo; /* Puntero a archivo. */ /* Abrir un archivo para escritura. */ puntero_a_archivo = fopen("Piezas00.DAT","wb"); /* Leer datos del usuario. */

do { fflush(stdin); printf("\nNombre de la pieza => "); gets(pieza.nombre_pieza); fflush(stdin); printf("Numero de piezas => "); scanf("%d", &pieza.cantidad); fflush(stdin); printf("Precio de cada pieza => "); scanf("%f", &pieza.precio_unitario); fflush(stdin); /* Escribir la estructura al archivo. */ fwrite(&pieza, sizeof(pieza), 1, puntero_a_archivo); printf("Quiere introducir mas piezas (s/n)? => "); } while (getche() == 's'); /* Cerrar el archivo abierto. */ fclose(puntero_a_archivo); return 0;

Ejemplo: lectura de un archivo binario #include "stdafx.h" #include typedef struct { char nombre_pieza[15]; /* Tipo de pieza. */ int cantidad; /* Número de piezas. */ float precio_unitario; /* Precio de cada pieza. */ } tipo_pieza; int _tmain(int argc, _TCHAR* argv[]) { tipo_pieza pieza; /* Variable de tipo tipo_pieza. */ FILE *puntero_a_archivo; /* Puntero a archivo. */ /* Abrir un archivo para lectura. */ puntero_a_archivo = fopen("Piezas00.DAT","rb");

/* Leer datos del archivo y mostrarlos por pantalla */ while(fread(&pieza, sizeof(pieza), 1, puntero_a_archivo)==1) { printf("\nNombre de la pieza => %s\n", pieza.nombre_pieza); printf("Numero de piezas => %d\n", pieza.cantidad); printf("Precio de cada pieza => %f\n", pieza.precio_unitario); } /* Cerrar el archivo abierto. */ fclose(puntero_a_archivo); getch(); return 0; }

Ejemplo: lectura Random #include typedef struct { char nombre_pieza[15]; /* Tipo de pieza. */ int cantidad; /* Número de piezas. */ float precio_unitario; /* Precio de cada pieza. */ } tipo_pieza; void main() { tipo_pieza pieza; /* Variable de tipo tipo_pieza. */ FILE *puntero_a_archivo; /* Puntero a archivo. */ int num_registro; /* Número de registro. */ long int desplazamiento; /* Desplazamiento del registro. */ clrscr(); /* Abrir el archivo para lectura. */ if ((puntero_a_archivo = fopen("PIEZAS00.DAT","r")) == NULL) { printf("No puedo abrir el archivo PIEZAS00.DAT\n"); exit(-1); }

Lectura Random (Cont) /* Leer el número de registro...starts at zro */ printf("Introduzca el numero de registro => "); scanf("%d", &num_registro); /* Calcular el desplazamiento del registro seleccionado. */ desplazamiento = num_registro * sizeof(pieza); /* Situarse en el lugar requerido */ if (fseek(puntero_a_archivo, desplazamiento, 0) != 0) { printf("El puntero ha superado el limite del archivo."); exit(-1); } /* Leer del archivo los datos seleccionados. */ fread(&pieza, sizeof(pieza), 1, puntero_a_archivo); /* Mostrar los datos del archivo. */ printf("\nNombre de la pieza => %s\n", pieza.nombre_pieza); printf("Numero de piezas => %d\n", pieza.cantidad); printf("Precio de cada pieza => %f\n", pieza. precio_unitario); getch(); /* Cerrar el archivo abierto. */ fclose(puntero_a_archivo);

Fin C_Fund05.pptx