Fondamenti di Informatica

Похожие документы
Fondamenti di Informatica

Matlab: Gestione avanzata dei file

Funzioni matlab per la gestione dei file. Informatica B Prof. Morzenti

MATLAB-UD5. Array di strutture. File.

Traccia 1. Nome Cognome Matricola Firma. Spazio Riservato alla Commissione. Esercizio 1 Esercizio 2 Esercizio 3 Esercizio 4 Esercizio 5 Totale

Gestione dei file. File di testo e binari

Introduzione a Matlab

Linguaggio C: i file

Esercizio 1 (15 punti)

Metodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab

File e puntatori a file

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C

IL CONCETTO DI FILE. È illecito operare oltre la fine del file.

I files in C. A cura del prof. Ghezzi

Fondamenti di Informatica A.A. 2017/18

Scrittura formattata - printf

Input/output da file I/O ANSI e I/O UNIX FLUSSI E FILE FLUSSI FLUSSI di TESTO FLUSSI BINARI FILE

I file Laboratorio di Linguaggi di Programmazione a.a. 2001/2002

Gestione dei File in C

OTTAVA ESPERIENZA DI LABORATORIO. L elaborazione dei files in C

Files in C++ Fondamenti di Informatica. R. Basili. a.a

MATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA

Sommario FONDAMENTI DI INFORMATICA. File e Python. Gestione di file. LINGUAGGIO Python Gestione dei file

Data Import e Probabilità. Renato Mainetti

Esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo)

Cognome e Nome : Corso e Anno di Immatricolazione: Modalità di Laboratorio (Progetto/Prova) :

APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO VI.2015

Fondamenti di Informatica

File binari e file di testo

Laboratorio di Python

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

Scuola di Calcolo Scientifico con MATLAB (SCSM) 2017

4. I moduli in Access 2000/2003

Introduzione al MATLAB c Parte 3 Script e function

Funzioni, Stack e Visibilità delle Variabili in C

SEE Electrical Expert V3R7: FAQ

Array multidimensionali e stringhe

Fondamenti di Informatica

Comandi di Input/Output in Matlab

Input/output in C e in C++

Fondamenti di Informatica

Linguaggio C - sezione dichiarativa: costanti e variabili

Gestione di files Motivazioni

MATLAB Elementi di grafica Costrutti di programmazione

Gestione dei File. dischi nastri cd

1) Matlab e simulazione. 2) Esempi di utilizzo. Mauro De Sanctis corso di Informazione e Codifica Università di Roma Tor Vergata

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.

Laboratorio 4 Funzioni e Input/Output

Fondamenti di Informatica A.A. 2016/17

GESTIONE DEI FILE IN C

Fondamenti di Informatica A.A. 2017/18

Confronto tra stringhe. (modulo) Calcolo della media e della varianza. Ecco un elenco di codici Matlab: - Calcolo valore assoluto (modulo)

CORSO DI LAUREA IN INGEGNERIA ELETTRICA

Classe Vettore (i) Creare una classe che consenta di gestire un vettore di N elementi reali (double), che preveda i seguenti metodi:

MATLAB parte II. Array

Транскрипт:

Fondamenti di Informatica Gestione dei File in MATLAB Prof. Christian Esposito Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2016/17 Gestione dei file in MATLAB

OUTLINE Caratteristiche dei File Apertura/Chiusura di File Scrittura/Lettura da File Importare Dati da File Gestione dei file in MATLAB 02/38

Caratteristiche dei File I file possono essere visti come dei contenitori permanenti di informazioni Il Sistema Operativo si occupa della loro gestione ed offre la possibilità, agli sviluppatori, di: Apertura/chiusura di un file Lettura/scrittura di un file Ecc. Gestione dei file in MATLAB 03/38

Apertura/Chiusura di File 1/2 fid= fopen(percorso_del_file, modalita_apertura) Sintassi Tramite fopen è possibile aprire un file, memorizzato nel percorso indicato da percorso_del_file nella modalità d apertura specificata da modalita_apertura La modalità di apertura (modalita_apertura) può essere: Scrittura (modalita_apertura = w ) Lettura (modalita_apertura = r ) Scrittura e lettura (modalita_apertura = w+ e modalita_apertura = r+ ) Append (modalita_apertura = a ): apre un file esistente o crea un nuovo file in scrittura con posizionamento alla fine del file. La funzione fopen restituisce il valore fid, che è un identificatore associato al file aperto Gestione dei file in MATLAB 04/38

Apertura/Chiusura di File 2/2 fclose(fid) Sintassi Chiude il file identificato da fid Esempio utilizzo fopen e fclose >> fid = fopen('c:\test.txt', 'r'); >> fclose(fid); Gestione dei file in MATLAB 05/38

Apertura/Chiusura di File 2/2 fclose(fid) Sintassi Chiude il file identificato da fid Esempio utilizzo fopen e fclose >> fid = fopen('c:\test.txt', 'r'); >> fclose(fid); Percorso: C:\test.txt Modalità di apertura: lettura ( r ) Gestione dei file in MATLAB 06/38

Scrittura di un File (1/2) Alcune funzioni per la scrittura su file Il file deve essere precedentemente aperto mediante la fopen fwrite Scrive un array, passato come parametro, su un file specificato help fwrite per maggiori dettagli fprintf Scrive su file, secondo un formato specificato dall utente help fpritnf per maggiori dettagli Gestione dei file in MATLAB 07/38

Scrittura di un File (2/2) cont = fwrite(fid, array, formato) cont: indica il numero di valori effettivamente scritti nel file fid: identificatore del file su cui scrivere (nb: il file deve essere stato apertoin precedenza) array: array contenente i dati da salvare formato: specifica il formato in cui i dati verranno salvati. Formati principali: char, int8, int16, int32, int64, float32, float64 (i numeri indicano il numero di bit usati per rappresentare i valori) Gestione dei file in MATLAB 08/38

Lettura da File (1/2) Alcune funzioni per la lettura da file Il file deve essere precedentemente aperto mediante la fopen fread Legge un array, di lunghezza specificata, da un file indicato tramite parametro help fread per maggiori dettagli fscanf Legge da file, specificando esplicitamente il formato di tali dati help fscanf per maggiori dettagli Gestione dei file in MATLAB 09/38

Lettura da File (2/2) [array cont]=fread(fid, size, formato) cont, fid, e formato hanno il significato per fwrite I dati letti vengono memorizzati in array, e size è la dimensione dei dati da leggere. Tre possibilità n: legge esattamente n valori. Dopo l esecuzione di questa istruzione array sarà un vettore colonna contenente questin valori Inf: legge fino alla fine del file. Dopo l esecuzione di questa istruzione array sarà un vettore colonna contenente tutti i valori letti [n m]: legge esattamente nxm valori. Dopo l esecuzione di questa istruzione array sarà una matrice nxm contenente tutti i valori letti Gestione dei file in MATLAB 10/38

Esempio di Scrittura e Lettura da File (1/2) % genera un vettore riga contenente numeri casuali a=rand(1,1000); %richiede all'utente il nome del file filename=input('inserisci un nome di file '); [fid msg]=fopen(filename, 'w'); %apre il file %se il file e` stato aperto con successo... if(fid>0) cont=fwrite(fid,a,'float64'); %scrive a su file %informa l'utente dell'avvenuta scrittura disp([num2str(cont) ' valori scritti...']); fclose(fid); %chiude il file else disp(msg); end Gestione dei file in MATLAB 11/38

Esempio di Scrittura e Lettura da File (2/2) % genera un vettore riga contenente numeri casuali a=rand(1,1000); %richiede all'utente il nome del file filename=input('inserisci un nome di file '); [fid msg]=fopen(filename, 'w'); %apre il file %se il file e` stato aperto con successo... if(fid>0) [vett cont]=fread(fid,[1 1000],'float64'); %informa l'utente dell'avvenuta lettura disp([num2str(cont) ' valori letti...']); fclose(fid); %chiude il file else disp(msg); end Gestione dei file in MATLAB 12/38

Importare Dati da File 1/4 Con la funzione importdata è importare dati da diversi tipi di file: possibile di Testuali CSV Ecc. Non è necessario che il file sia stato aperto precedentemente (tramite fopen) help importdata per maggiori dettagli Gestione dei file in MATLAB 13/38

Importare Dati da File 2/4 Esempio 1 1, 4, 6 4, 2, 5 6, 5, 4 matrice.txt >> A = importdata( matrice.txt ); A = 1 4 6 4 2 5 6 5 4 Gestione dei file in MATLAB 14/38

Importare Dati da File 2/4 Esempio 1 1, 4, 6 4, 2, 5 6, 5, 4 matrice.txt >> A = importdata( matrice.txt ); A = 1 4 6 4 2 5 6 5 4 La virgola (simbolo,) è interpretata come separatore di colonne Gestione dei file in MATLAB 15/38

Importare Dati da File 3/4 Esempio 2 1 4 6 4 2 5 6 5 4 matrice.txt >> A = importdata( matrice.txt, ); A = 1 4 6 4 2 5 6 5 4 Gestione dei file in MATLAB 16/38

Importare Dati da File 3/4 Esempio 2 1 4 6 4 2 5 6 5 4 matrice.txt >> A = importdata( matrice.txt, ); A = 1 4 6 4 2 5 6 5 4 È possibile specificare anche un delimitatore di colonne in importdata (spazio nell esempio) Gestione dei file in MATLAB 17/38

Importare Dati da File 4/4 Studenti/Voti esame Esame 1 Esame 2 Esame 3 Esame 4 Esame 5 Matricola 1 28 25 30 23 19 Esempio 3 Matricola 2 24 27 28 21 24 Matricola 3 25 25 19 18 22 Matricola 4 21 30 30 22 30 Gestione dei file in MATLAB 18/38

Importare Dati da File 4/4 Studenti/Voti esame Esame 1 Esame 2 Esame 3 Esame 4 Esame 5 Matricola 1 28 25 30 23 19 Esempio 3 Matricola 2 24 27 28 21 24 Matricola 3 25 25 19 18 22 Matricola 4 21 30 30 22 30 Studenti/Voti, E1, E2, E3, E4, E5 Matricola 1, 28, 25, 30, 23, 19 Matricola 2, 24, 27, 28, 21, 24 Matricola 3, 25, 25, 19, 18, 22 Matricola 4, 21, 30, 30, 22, 30 vs.txt Gestione dei file in MATLAB 19/38

Importare Dati da File 4/4 Studenti/Voti esame Esame 1 Esame 2 Esame 3 Esame 4 Esame 5 Matricola 1 28 25 30 23 19 Esempio 3 Matricola 2 24 27 28 21 24 Matricola 3 25 25 19 18 22 Matricola 4 21 30 30 22 30 Nome del file Studenti/Voti, E1, E2, E3, E4, E5 Matricola 1, 28, 25, 30, 23, 19 Matricola 2, 24, 27, 28, 21, 24 Matricola 3, 25, 25, 19, 18, 22 Matricola 4, 21, 30, 30, 22, 30 vs.txt Gestione dei file in MATLAB 20/38

Importare Dati da File 4/4 Esempio 3 Studenti/Voti, E1, E2, E3, E4, E5 Matricola 1, 28, 25, 30, 23, 19 Matricola 2, 24, 27, 28, 21, 24 Matricola 3, 25, 25, 19, 18, 22 Matricola 4, 21, 30, 30, 22, 30 vs.txt >> file = importdata( vs.txt ); file = data: [4x5 double] textdata: {5x6 cell} Gestione dei file in MATLAB 21/38

Importare Dati da File 4/4 >> file = importdata( vs.txt ); file = data: [4x5 double] textdata: {5x6 cell} Esempio 3 vs.txt Studenti/Voti, E1, E2, E3, E4, E5 Matricola 1, 28, 25, 30, 23, 19 Matricola 2, 24, 27, 28, 21, 24 Matricola 3, 25, 25, 19, 18, 22 Matricola 4, 21, 30, 30, 22, 30 Tutti i dati numerici vengono immagazzinati in data Gestione dei file in MATLAB 22/38

Importare Dati da File 4/4 >> file = importdata( vs.txt ); file = data: [4x5 double] textdata: {5x6 cell} Esempio 3 vs.txt Studenti/Voti, E1, E2, E3, E4, E5 Matricola 1, 28, 25, 30, 23, 19 Matricola 2, 24, 27, 28, 21, 24 Matricola 3, 25, 25, 19, 18, 22 Matricola 4, 21, 30, 30, 22, 30 textdata conterrà tutti i dati testuali (es., intestazione delle righe e colonne) Gestione dei file in MATLAB 23/38

Importare Dati da File 4/4 Esempio 3 >> file = importdata( vs.txt ); file = data: [4x5 double] textdata: {5x6 cell} >> file.textdata ans = 'Studenti/Voti' ' E1' ' E2' ' E3' ' E4' ' E5' 'Matricola 1' '' '' '' '' '' 'Matricola 2' '' '' '' '' '' 'Matricola 3' '' '' '' '' '' 'Matricola 4' '' '' '' '' '' Gestione dei file in MATLAB 24/38

Importare Dati da File 4/4 >> file = importdata( vs.txt ); Esempio 3 file = data: [4x5 double] textdata: {5x6 cell} >> A = file.data A = 28 25 30 23 19 24 27 28 21 24 25 25 19 18 22 21 30 30 22 30 Gestione dei file in MATLAB 25/38

Importare Dati da File Tramite Interfaccia Grafica Tramite uiimport è possibile selezionare, tramite interfaccia grafica, diverse opzioni per l import di dati: Tipo di separatore di colonna Quante righe/colonne occupa l intestazione Ecc. Non è necessario che il file sia stato aperto precedentemente (tramite fopen) Gestione dei file in MATLAB 26/38

Importare Dati da File Tramite Interfaccia Grafica >> uiimport('data.txt') Gestione dei file in MATLAB 27/38

Importare Dati da File Tramite Interfaccia Grafica >> uiimport('data.txt') data.txt è il percorso del file Gestione dei file in MATLAB 28/38

Importare Dati da File Tramite Interfaccia Grafica Passaggio 1 >> uiimport('data.txt') Gestione dei file in MATLAB 29/38

Importare Dati da File Tramite Interfaccia Grafica Passaggio 1 >> uiimport('data.txt') Selezione del separatore di colonne Gestione dei file in MATLAB 30/38

Importare Dati da File Tramite Interfaccia Grafica Passaggio 1 >> uiimport('data.txt') Numero di linee dell intestazione Gestione dei file in MATLAB 31/38

Importare Dati da File Tramite Interfaccia Grafica Passaggio 1 >> uiimport('data.txt') Anteprima del contenuto del file Gestione dei file in MATLAB 32/38

Importare Dati da File Tramite Interfaccia Grafica Passaggio 1 >> uiimport('data.txt') Anteprima di ciò che verrà importato (data) Gestione dei file in MATLAB 33/38

Importare Dati da File Tramite Interfaccia Grafica Passaggio 1 >> uiimport('data.txt') Anteprima di ciò che verrà importato (textdata) Gestione dei file in MATLAB 34/38

Importare Dati da File Tramite Interfaccia Grafica Passaggio 2 >> uiimport('data.txt') Gestione dei file in MATLAB 35/38

Importare Dati da File Tramite Interfaccia Grafica Passaggio 2 >> uiimport('data.txt') Selezioniamo cosa importare all interno del nostro workspace Gestione dei file in MATLAB 36/38

Importare Dati da File Tramite Interfaccia Grafica Passaggio 2 >> uiimport('data.txt') Anteprima della variabile selezionata Gestione dei file in MATLAB 37/38

Importare Dati da File Tramite Interfaccia Grafica Passaggio 3 Cliccando su Finish, nel nostro Workspace di MATLAB, saranno importate le variabili selezionate ed avranno i valori visti nell anteprima Gestione dei file in MATLAB 38/38