Bloque 9. Ficheros de texto

Documentos relacionados
Ficheros conceptos. Manejo de ficheros en C. Apertura del fichero Función fopen: nombre del fichero. Apertura del fichero Función fopen

Tema 5. Entrada y Salida

Ficheros. Archivo, o fichero: Características:

Programación I Teoría : Entrada/Salida - Archivos.

Operaciones de E/S en ANSI C

ENTRADA/SALIDA. Relación Programa - Sistema Operativo - Hardware

Tema 6. Gestión de ficheros en C. Programación en Lenguajes Estructurados

Caracter a caracter los datos pueden ser escritos o leidos carácter a carácter, con las funciones fputc() y fgetc().

Para C un chero no es más que una porción de almacenamiento

Tema 3: Entrada/Salida de Ficheros

Por ejemplo, para declarar un arreglo de enteros llamado a con diez elementos se hace de la siguiente forma:

LENGUAJE. Tema 8 Ficheros

Concepto Concept s Los L nom res re d e e los h c eros: exter te n r os o o fí s fí ico nom re ú nico i del del ar chiv chiv o o o ficher ficher en

Archivos. Programación en C 1

Fundamentos de Informática 7. Introducción al manejo de archivos

Archivos en lenguaje C

Objetivos. El alumno conocerá y aplicará el concepto de archivo para el almacenamiento y recuperación de datos persistentes.

Capítulo 9. Lectura y escritura de ficheros

Tema 13: Manejo de archivos en lenguaje C

Índice. Estructuras de datos en Memoria Principal: Vectores. Matrices. Cadenas de caracteres. Estructuras. Estructuras de datos en Memoria Externa:

6. Archivos. Programación II, FCFM, BUAP

Informática Ingeniería en Electrónica y Automática Industrial

Lenguaje de Programación: C++ ARCHIVOS I/O

Entrada y Salida de Datos. Lectura de archivos.

U.A.B.C. Facultad de Ingeniería Programación Estructurada UNIDAD VI. UNIDAD VI Archivos.

OPERACIONES SOBRE LENGUAJES REGULARES LA UNIÓN DE LENGUAJES REGULARES

Informática I para Bachillerato

Procesamiento de Archivos

Fundamentos de Informática

Archivos. Conceptos SESION 13

Informática PRÀCTICA 9 Curs Práctica Nº 9: Rango y precisión de representación de números en el ordenador.

Entrada/Salida. Entrada/Salida. Flujos de texto. Flujos de datos. Flujos binarios. Flujos estándares ANSI

7. Manejo de Archivos en C.

Fundamentos de Informática ETSII. Tema 2: Entrada y Salida de Datos. Ficheros.

Lenguaje C Entrada y Salida de Datos. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia

MIS. Lizbeth Alejandra Hernández González

FILE *nombre_puntero_fichero; fopen(char_nombre_archivo,char_modo_apertura ); MODOS DE APERTURA. Abre un archivo de texto para lectura.

LEER RECUPERAR EXTRAER DATOS DE FICHEROS O ARCHIVOS EN C. FGETC, GETC, FGETS, FSCANF. EJERCICIOS (CU00538F)

Tema 3. Estructuras de control

Examen de Programación I

Formatos para prácticas de laboratorio

Introducción a la Programación en C Gestión de Ficheros

Analista Universitario en Sistemas. Taller de Programación II. Instituto Politécnico Superior ARCHIVOS. (File Management)

ARCHIVOS. 1. Introducción. 2. Definición de archivo. 3. Archivos de acceso secuencial. 4. Gestión de un archivo secuencial de estructuras

Entrada/Salida de Archivos

Departamento de Electrónica

Manejo de ficheros con PHP

TEMA 8. Ficheros. 1. Introducción

UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO

o Archivos secuenciales: imitan el modo de acceso de los antiguos ficheros secuenciales almacenados en cintas magnéticas y

Archivos & Cadenas CURSO DE PROGRAMACIÓN EN C. Centro de Investigación y de Estudios Avanzados del IPN. CINVESTAV - Tamaulipas.

Matías Zabaljáuregui

Tema 5 Archivos o Ficheros


UNAN LEÓN Departamento de Computación. Asignatura: ALGORITMO Y ESTRUCTURA DE DATOS MANEJO DE ARCHIVOS (FICHEROS) EN C

EJERCICIOS. Algo de C CADENAS

LEER Y ESCRIBIR ARCHIVOS DE TEXTO CON PHP. FUNCIONES FOPEN (MODOS), FGETS, FPUTS, FCLOSE Y FEOF. EJEMPLOS (CU00836B)

Introducción a Sistemas Operativos: Ficheros

Laboratorio de Arquitectura de Redes. Entrada y salida estándar

Ejercicios de la sesión 4 de C resueltos

Tema 5 Archivos o Ficheros

Tema 07: Tipos de datos en C & entrada y salida estándar

Archivos. qué es un archivo?

Informática Ingeniería en Electrónica y Automática Industrial

Fundamentos de Informática 4. Primeros Programas, Primeros Diseños

Entrada/Salida. Entrada y Salida Estándar

Apellidos: Nombre: Matrícula: Examen Programación para Sistemas Grado en Ingeniería Informática (2009)

12.Arrays dinámicos. Ejemplo en C #include <stdio.h> #include <malloc.h> #include <string.h>

APELLIDOS NOMBRE GRUPO CALIFICACIÓN FECHA

Repaso 03: Manejo de Archivos en C

Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C Sesión 3

TEMA 7: Ficheros. TEMA 7: Ficheros Concepto de fichero

Estructuración del programa en partes más pequeñas y sencillas

1.1. Entrada / Salida <stdio.h>

En este artículo vamos a conocer los tipos de datos que podemos manejar programando en C.

Tema 1. Ficheros FUNDAMENTOS DE PROGRAMACIÓN II. Profesor: Fernando Pereñíguez García. Escuela Politécnica

Programación Estructurada

Proyecto Fin de Curso

Autor: Ing. Nahuel González INTRODUCCIÓN A C. Clase 1

Guía práctica de estudio 12: Lectura y escritura de datos

EJERCICIOS DE PROGRAMACIÓN EN C. PASO DE PSEUDOCÓDIGO A CÓDIGO. BUCLES, CONDICIONES (CU00539F)

Instituto Técnico Jesús Obrero 4to año Programación Profesor: Luis Vallenilla

Introducción a Funciones

2.1. Abstracción del programa count cuyo código aparecía en el Anexo A1

Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C

Archivos de datos en C Ficheros

Fundamentos de Informática ETSII. Tema 3: Estructuras de Selección.

Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación

Lenguaje de Programación: C++, INPUT OUTPUT(Variables)

Informática Ingeniería en Electrónica y Automática Industrial

Laboratorio de Arquitectura de Redes. Entrada y salida por archivos en lenguaje C

Práctica 1: Intérprete de mandatos. Sistemas Operativos Área de Arquitectura y Tecnología de Computadores

Boletín 3- Archivos. Departamento de Lenguajes y Sistemas Informáticos

Transcripción:

Bloque 9 Ficheros de texto

Ficheros Necesitamos un tipo de datos que nos permita guardar datos de forma permanente en el disco: ficheros El SO se encarga de gestionar físicamente el fichero A nosotros nos interesa la estructura de datos y las operaciones básicas (crear, abrir, escribir, leer y cerrar) para trabajar con los ficheros Nos centramos en ficheros de acceso secuencial, en concreto de texto (contienen caracteres)

La estructura FILE La estructura FILE es la que representa un fichero y está definida en stdio Gestiona información a nivel del SO (ubicación en memoria del buffer, posición del carácter actual en el buffer,...) Nunca declararemos variables de tipo FILE sino punteros a esa estructura Por ejemplo: FILE *f;

Abrir un fichero Función fopen (en stdio) FILE *f; f = fopen("nombrefitchero.extensión", "modo de apertura"); Ejemplo: FILE *f; f = fopen("hola.txt","r"); Modos de apertura Mode r w a Explicació obre el fitxer per lectura. Si el fitxer no existeix retorna un error obre el fitxer per escriptura. Si el fitxer existeix l esborra i si no en crea un de nou obre el fitxer per afegir text al final. Si el fitxer existeix ens situa al final del mateix i si no en crea un de nou

Cerrar un fichero Al acabar de utilizar un fichero hay que cerrarlo (y que el SO lo libere) Función fclose (en stdio) Ejemplo: fclose(f);

Leer y escribir Funciones getc y putc (en stdio) Ejemplo: char c; FILE *f1, *f2;... c=getc(f1); /*lee un carácter del fichero f1 y lo asigna a la variable c */... putc(c,f2); /*escribe el valor de la variable c en el fichero f2 */ Estas funciones avanzan el cursor o posición del carácter actual (es un acceso secuencial), antes de leer el carácter

Leer y escribir Si el fichero f contiene el texto hola (y está abierto en modo lectura) c=getc(f); el cursor avanza al primer carácter, lo lee ( h ) y lo asigna a la variable c Si ahora volvemos a ejecutar c=getc(f); el cursor pasa ahora al siguiente carácter, lo lee ( o ) y lo asigna a la variable c

Fin del fichero El carácter especial EOF indica que se ha llegado al final del fichero Todos los ficheros acaban con ese carácter

Ejemplo: impresión de un #include <stdio.h> void main() { FILE *f; char c; fichero completo f=fopen("fitxer.txt","r"); //obre el fitxer en mode lectura c=getc(f); //llegeix el primer caràcter while (c!=eof) //repeteix fins que arribi al final de fitxer { printf("%c",c); //escriu el caràcter llegit c=getc(f); //llegeix el següent caràcter } fclose(f); //tanca el fitxer }

Ejemplo: impresión de un #include <stdio.h> fichero completo (v.2) void main() { FILE *f; char c; f=fopen("fitxer.txt","r"); //obre el fitxer en mode lectura while ((c=getc(f))!=eof) //llegeix i compara amb EOF printf("%c",c); //escriu el caràcter llegit } fclose(f); //tanca el fitxer

Ejemplo: copia de un fichero a #include <stdio.h> void main() { FILE *fa, *fb; char c; otro fa=fopen("a.txt","r"); //obre el fitxer A per lectura fb=fopen("b.txt","w"); //obre el fitxer B per escriptura while ((c=getc(fa))!=eof) //llegeix i compara amb EOF putc(c,fb); //escriu el caràcter llegit a B } fclose(fa); //tanca el fitxer A fclose(fb); //tanca el fitxer B

Función feof Mira si el carácter actual (cursor) es el final del fichero (sin avanzar el cursor) Retorna un entero diferente 0 si es EOF y 0 si no lo es

Ejemplo: copia de un fichero a #include <stdio.h> void main() { FILE *fa, *fb; char c; otro (v.2) fa=fopen("a.txt","r"); //obre el fitxer A per lectura fb=fopen("b.txt","w"); //obre el fitxer B per escriptura c=getc(fa); //llegeix del fitxer A while (!feof(fa)) //comprova que no hem arribat al EOF d A { putc(c,fb); //escriu el caràcter llegit a B c=getc(fa); //llegeix del fitxer A } } fclose(fa); //tanca el fitxer A fclose(fb); //tanca el fitxer B

Lectura y escritura con formato Las funciones fscanf y fprintf son equivalentes a scanf y printf, pero leyendo o escribiendo en un fichero (el primer parámetro es el fichero) Ejemplos: fprintf(fitxer, %d\t%f, i, f); fscanf(fitxer, %d,&i); fscanf(fitxer, %f,&f); fscanf(fitxer, %s,cadena); /* donde i es int, f float, fitxer puntero a FILE y cadena un string */

Lectura y escritura por líneas Las funciones gets y puts también tienen sus equivalentes para trabajar con ficheros: fgets y fputs Ejemplos: fgets(cadena, num, fitxer); fputs(cadena, fitxer); /* donde num es int, fitxer puntero a FILE y cadena un string */

Entrada y salida estándar En C hay 3 ficheros especiales definidos en la librería stdio: stdin: la entrada estándar (por teclado) stdout: la salida estándar (por pantalla) stderr: la salida estándar de errores Son equivalentes: fprintf(stdout, %d, i); printf( %d, i); Son equivalentes: fscanf(stdin, %d, &i); scanf( %d, &i);