File binari Accesso a file con record di lunghezza costante Struct Persona { Int id; Char nome[50];// nome e cognome Double stipendio; }; Persona dipendente;

Slides:



Advertisements
Presentazioni simili
File Linguaggio C.
Advertisements

Puntatori Linguaggio C.
I tipi Strutturati.
Puntatori e gestione dinamica della RAM
Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A Gestione dei file Ing. Simona Colucci.
Funzioni In C++ le funzioni sono caratterizzate da un nome, dal tipo della variabile ritornata e da una lista di parametri (opzionali) La lista dei parametri.
Esercitazioni If nidificati
Uso avanzato di C.
Nel C non esiste un dato primario di tipo stringa; queste sono rappresentate con un array monodimensionale di caratteri (tipo char). Così per definire.
Preincremento e PostIncremento in C++
I Files Definizione Operazioni File e periferiche Moduli di S.O.
Java Stream e File. La classe File Per operare con lintero file java mette a disposizione la classe File Per utilizzare la classe File è necessario importare.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità G1 Dati strutturati.
I File di testo in Pascal
MEMORIE DI MASSA e FILE La gestione degli archivi Appunti per 4TC 22/3/2007.
1 Informatica Generale Susanna Pelagatti Ricevimento: Mercoledì ore presso Dipartimento di Informatica, Via Buonarroti,
PHP e i files Laboratorio di Progettazione Web AA 2009/2010 Chiara Renso ISTI- CNR -
Operazioni di I/O da console e da file in C standard
Differenze tra C e C++ Commenti: Adesso puoi inserire dei commenti tra // e la fine della linea. Usare le librerie C: In C++ puoi anche chiamare una funzione.
1 Directory Il formato delle directory varia nei vari FS utilizzati in ambito Unix Quando una directory viene aperta viene restituito un puntatore a un.
1 System Call per Comunicazione tra Processi Pipe.
SC che operano su file (1)
Interfaccia del file system
INFORMATICA I file.
Programmazione Procedurale in Linguaggio C++
Fondamenti di Informatica II Ingegneria Informatica (A-I) Prof. M.T. PAZIENZA a.a – 3° ciclo.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE File Marco D. Santambrogio – Ver. aggiornata al 9 Maggio 2012.
Introduzione alla Object Oriented Programming, OOP E.Mumolo. DEEI
E.Mumolo. DEEI Introduzione alla programmazione ad oggetti in C++ Object Oriented Programming, OOP E.Mumolo. DEEI
Laboratorio di Linguaggi P R I M O C O M P I T I N O Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese.
Laboratorio di Linguaggi lezione XI: I/O Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea.
Introduzione agli stream e alle classi
Funzioni di Libreria per le stringhe DICHIARAZIONI CONTENUTE NEL FILE: char *strcpy( char *dest, const char *sorg ); Copia sorg in dest, incluso il carattere.
INFORMATICA I file. © Piero Demichelis 2 File Per rendere più uniforme possibile il comportamento dei programmi in relazione alla grande varietà dei dispositivi.
Esercizio: Copiare un file in un nuovo file mediante le funzioni read e write.
Esercizi di riepilogo sul linguaggio C: file, puntatori, liste
1 Gestione dei File Corso di Informatica A Vito Perrone.
File di testo, file binari
Fondamenti di Informatica A - Massimo Bertozzi TIPI DI DATO IN C++ What's in a name? That which we call a rose By any other name would smell as sweet.
I File.
Modulo 13: System call relative al File System
GESTIONE DEI FILE Per poter mantenere disponibili i dati tra le diverse esecuzioni di un programma (persi-stenza dei dati) è necessario poterli archi-viare.
TIPI DI DATO Un tipo di dato T è definito come: un dominio di valori, D un insieme di funzioni F 1,..,F n sul dominio D un insieme di predicati P 1,..,P.
File ad accesso casuale o random
1. 2 Struct Al fine di illustrare luso del tipo struct, utilizzando le struct descritte nella lezione precedente, mostriamo come si scrive un programma.
void binario(int n); …………………
Creazione progetto in C++/DEV
1 Gestione dei File. 2 Perché i file? Sono strutture dati persistenti Sono solitamente memorizzati sui dischi –Si usano dall'interno dei programmi Realizzano.
Gestione dei file di testo, matrici e struct
Esercizi su alberi binari di ricerca
Fondamenti di Informatica 2 Ingegneria Informatica Docente: Giovanni Macchia a.a
Prof.ssa Chiara Petrioli -- corso di programmazione 1, a.a. 2006/2007 Corso di Programmazione 1 a.a.2006/2007 Prof.ssa Chiara Petrioli Corso di Laurea.
Programmazione in linguaggio C
Il linguaggio C Puntatori e dintorni.
1 Il linguaggio C Puntatori e dintorni. 2 Puntatori : idea di base In C è possibile conoscere e denotare l’indirizzo della cella di memoria in cui è memorizzata.
Lez. 9 (13/14)Elementi di Programmazione1 Lezione 9 Valutazione di espressioni File di testo sequenziali.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE File Marco D. Santambrogio – Ver. aggiornata al 21 Maggio 2014.
Fabio Scotti – Università degli Studi – Laboratorio di programmazione per la sicurezza 1 Lezione 13 e 14 GESTIONE DEI FILE A) Nozioni sulla gestione dei.
1 Fabio Scotti ( ) Laboratorio di programmazione per la sicurezza Valentina Ciriani ( ) Laboratorio di programmazione Lezione 13 e 14 -
CORSO DI PROGRAMMAZIONE II
Apertura esplicita di un file
1. 2 Esempi d’uso di file binari. Scriviamo un semplice programma che calcola la lunghezza di un file di qualsiasi natura. I commenti all’interno del.
Relazione sulle strutture dati Svolta da: Buccella Simone Strutture di dati Aree di memoria Puntatore numericibooleani alfabetici Statici dinamici Puntatori.
1 Il linguaggio C Precisazioni sull’esperienza in laboratorio.
1 Chiamate di sistema Introduzione Errori : perror() Chiamate che lavorano su file.
Laboratorio di Linguaggi... altre D O M A N D E ! Marco Tarini Università dell’Insubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso.
Copyright © Istituto Italiano Edizioni Atlas
Lezione 14 Tecniche di I/O Avanzate Obiettivi di apprendimento: A.Come lavorare con stream binari B.Lavorare con I datalog files C.Vantaggi e svantaggi.
Files in C++ Motivazioni Un programma in esecuzione legge (sequenzialmente) una sequenza di caratteri prodotti "al volo" dall'utente (tramite tastiera)
I FILES AD ACCESSO SEQUENZIALE
Transcript della presentazione:

File binari Accesso a file con record di lunghezza costante Struct Persona { Int id; Char nome[50];// nome e cognome Double stipendio; }; Persona dipendente;

Apertura file binario fstream nomestream; nomestream.open(nomefile,… ios::binary) Accesso a file binario può essere 1.Sequenziale scrivere o leggere dal primo record 2.Diretto posizionamento su uno specifico record

Lettura e scrittura sequenziale su file binario nomestream.write(variabile, sizeof(variabile)); nomestream.read(variabile, sizeof(variabile)); Fare attenzione il metodo deve ricevere un puntatore a carattere per cui si effettua un casting sul record…

…… SCRITTURA nomestream.write((char*) &variabile, sizeof(variabile)); LETTURA nomestream.read((char*) &variabile, sizeof(variabile));

Creazione archivio dipendenti Costruisci un creadipendenti.cpp che apre il file binario in scrittura e lo richiude Il file fisico sarà anagrafe.dat Costruiamo ora un file inserisci dipendenti.cpp ……….. ……….

//inserite tutte le librerie Struct Persona { Int id; Char nome[50]; Double stipendio; }; Persona dipendente;

int main() { fstream fout; fout.open(“anagrafe.dat, ios::app | ios::binary); if (!fout) { cout<<“Error”<<endl; } else { cout<<“matricola dip(0 per finire) :”; cin>>dipendente.id; while(dipendente.id!=0) { cin.ignore(80,’\n’); cout<<“cognome e nome dip:”; cin.getline(dipendente.nome,50); cout<<“stipendio in euro:”; cin>>dipendente.stipendio;

fout.write((char *) &dipendente, sizeof(dipendente)); cout<<“inserisci matricola nuovo dip (0 per finire): “; cin>>dipendente.id; } fout.close(); }

cin.ignore(80,’\n’); elimina il carattere di terminazione. Rimuove tutti i caratteri dal buffer di input fino a quando incontra il primo carattere newline. Il numero 80 indica il numero massimo di caratteri di una riga cin.getline(dipendente.nome,50) gestisce gli ingressi di stringhe di caratteri che possono avere anche spazi bianchi, si indica anche il numero massimo di caratteri L’operatore >> trascura gli spazi, le tabulazioni e i caratteri di fine riga

Esercizio 1 Visualizza i dipendenti registrati Attività di progetto per il laboratorio: Le informazioni relative ai partecipanti alle gare studentesche di atletica vengono registrate in un archivio ad accesso sequenziale. 1.Costruire il file binario creaArchivioGS.cpp 2.Costruire una procedura che inserisce atleti nell’archivio 3.Costruire una procedura che stampi a video gli atleti registrati nell’archivio 4.Costruire una funzione che ci dica quanti 15enni partecipano alle gare 5.Il tutto deve prevedere un menù di scelta iterata

Ricapitolando….. Metodi su file di testo e binari operazioniMetodi/operatoriFile di testoFile binario Aperturaopen().. scrittura<<. scritturawrite(). letturaread(). lettura>>. chiusuraclose()..