Java base VI: Gestione I/O. Argomenti Introdurre le API per linput e output in Java.

Slides:



Advertisements
Presentazioni simili
File system: system call e strutture dati a run-time.
Advertisements

IL PACKAGE java.io Il package java.io definisce quattro
1 Progettazione gerarchica delle s- espressioni, utilizzando lereditarietà
Java Stream e File.
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.
Interfacce Java.
12/11/2004Laboratorio di Programmazione - Luca Tesei1 Caratteri – Input da Console Il tipo char Input dallo standard input.
26/11/2004Laboratorio di Programmazione - Luca Tesei1 Input/Output Redirecting, scomposizione dellinput, uso di file.
SAX e DOM UNIVERSITA DI CAMERINO Corso di laurea in Informatica Barbara Re Anno Accademico
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
L'interfaccia socket in Java
JDK Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dellInformazione Università di Siena Via Roma 56 – – SIENA Uff
Esempio: Tombola! Parte seconda.
Unified Modeling Language class C {…} class B extends C {…} Esiste una notazione grafica per mostrare le relazioni di ereditarietà. Object StringC B Tutte.
J0 1 Marco Ronchetti Java Threads & Sincronizzazione.
J0 1 Marco Ronchetti - Basi di Dati Web e Distribuite – Laurea Specialitica in Informatica – Università di Trento.
Modificatori: static Variabili e metodi associati ad una Classe anziche ad un Oggetto sono definiti static. Le variabili statiche servono come singola.
Richiami di TCP Networking in Java Elementi di base.
Sezione: Costruttori Costruttori. Definizione dei costruttori Se per una classe A non scrivo nessun costruttore, il sistema automaticamente crea il costruttore.
prompt> java SumAverage
J0 1 Marco Ronchetti - Java Networking TCP.
1 struct Pila { private: int size; int defaultGrowthSize; int marker; int * contenuto; void cresci(int increment); public: Pila(int initialSize) ; Pila();
Costruzione di Interfacce Lezione 10 Dal Java al C++ parte 1
Fisica Computazionale I - 51 OPERAZIONI DI INPUT/OUTPUT Le operazioni di input/output sono estremamente complesse perche' implicano una sostanziale interazione.
1. Conoscere luso delle collezioni in Java Comprendere le principali caratteristiche nelle varie classi di Collection disponibili Saper individuare quali.
JAVA C import java.util.*; #include <stdio.h>
Lettura e scrittura - Stream
Java Database Connection (dal corso dei Servizi Web)
Università La Sapienza Ingegneria del Software I 1 Ingegneria del software I Seminario 3:Enterprise Java Beans.
Java Serialization.
2000 Prentice Hall, Inc. All rights reserved. 1 Capitolo 6: Classi e astrazione dati 1.Introduzione 2.Definizione delle strutture 3.Accedere ai membri.
Packages. Package: insieme di classi e interfacce in relazione Per formare un package basta inserire la direttiva come prima istruzione nel file sorgente.
Streams e Input/output
Gestione File System e I/O in Windows 2000 Implementazione del File System FAT-12, FAT-16, FAT-32 NTFS API relative al File System Gestione dei dispositivi.
Il main program Ogni programma in C++, per essere eseguibile, deve contenere una funzione main() da cui l’esecuzione comincerà main() deve avere un tipo.
Programmazione distribuita in Java
1 File System ed Input/Output UNIX Implementazione del File System Caratteristiche del File System Unix/Linux System Call relative al File System Linput/output.
FILE TESTO INPUT PROGRAMMA + DATI OUTPUT FILE DATI PROGRAMMA OUTPUT
Componenti dell’architettura Oracle
Elementi di programmazione ad oggetti a. a. 2009/2010 Corso di Laurea Magistrale in Ingegneria Elettronica Docente: Mauro Mazzieri, Dipartimento di Ingegneria.
Programmazione in Java (9) Mauro Lorenzutti. 30/09/2005Corso Java - Mauro Lorenzutti2 Scaletta I/O Evoluto Serializzazione Comunicazioni via socket JUnit.
Un esempio: Registrazione e lettura di dati in un file
Corso di Elementi di Informatica
Sviluppo di una Xlet per la TV digitale terrestre Vademecum della regione marche 2006 Ventura Luca.
Fondamenti di Informatica Corsi di Laurea in Ingegneria Gestionale Canale AL ESERCITAZIONE 6 ARGOMENTI: LAVORARE CON CLASSI METODI DELLISTANZA, COSTRUTTORI.
Sistema Informativo Demanio Idrico marzo Per aumentare lefficienza del servizio abbiamo realizzato un sistema in grado di gestire in modo integrato.
PROGETTO DI STRUMENTI PER LA CONFIGURAZIONE DI APPLICAZIONI JAVA ENTERPRISE Anno Accademico 2006 / 2007 Sessione III FACOLTÀ DI INGEGNERIA CORSO DI LAUREA.
Attività Formativa Sviluppo di un WORKFLOW ENGINE di Dott. Riccardo Gasperoni Alessandro Caricato Gabriele Trabucco in collaborazione con Progesi S.p.A.
1 Lucidi delle esercitazioni di Sistemi di Elaborazione in Rete Università degli Studi della Calabria Corso di Laurea in Ingegneria Informatica A.A. 2003/2004.
L2 Elaborazione di immagini in C/C++
SEMINARIO INGEGNERIA DEL SOFTWARE a.a. 2006/2007
Soluzioni 1.Struttura base soluzione 2.Lettura dei tasti 3.Identificazione dei tasti 4.Accensione dei LED 5.Rotazione dei LED 6.Rotazione dei tasti fino.
Test con JUnit. zJUnit è un ambiente di test per programmi Java ySviluppato da Kent Beck É possibile usare JUnit allinterno di Eclipse per eseguire i.
1 Simulated multiple inheritance Sandro Pedrazzini Approfondimento Simulated multiple inheritance in Java.
2000 Prentice Hall, Inc. All rights reserved. I file Apertura e chiusura I file ad accesso sequenziale I file ad accesso casuale Apre un file già esistente.
Appunti di Java (J2SDK 1.4.2, JDK 1.6.0) prof. Antonella Schiavon settembre 2009.
Introduzione al linguaggio C. Cos’e’ il C? Il C e’ un linguaggio ad alto livello Un compilatore C prende in input un file contenente codice sorgente C.
Collection & Generics in Java
Fondamenti di informatica T-A Esercitazione 7 : Collezioni AA 2012/2013 Tutor : Domenico Di Carlo.
JDBC Java DataBase Connectivity SISTEMI ITIS B. CASTELLI Anno Scolastico
Ingresso e uscita in Java F. Bombi 10 ottobre 2002.
Argomenti della lezione
10/10/20021 Ingresso e uscita in Java F. Bombi 10 ottobre 2002.
1 Input / Output Spesso un programma deve acquisire dati da una sorgente esterna o inviare informazioni a una destinazione esterna. L’informazione può.
1 Input / Output Spesso un programma deve acquisire dati da una sorgente esterna o inviare informazioni a una destinazione esterna. L’informazione puo’
1 ELEMENTI DI INFORMATICA Università degli Studi di Cagliari Corso di Laurea in Ingegneria Elettronica Linguaggio C A.A. 2011/2012
Corso Java : Lezione 4 Eccezioni IO.
Animazione su attività del bus di controllo
File System ed Input/Output
Usando strutture dati nella piattaforma Java Collections Framework
Transcript della presentazione:

Java base VI: Gestione I/O

Argomenti Introdurre le API per linput e output in Java

Obiettivi Familiarizzare con le procedure di accesso ai file

Input e Output in Java java.io Gestito dal package java.io classi interfacce eccezioni Composto da classi per Accedere ad informazioni relative ai file e alle directory Leggere e scrivere dati IMPORTATO ESPLICITAMENTE

La classe File La classe fondamentale per accedere alle informazioni relative ai file ed alle directory E importante tenere presenti i problemi di portabilità del codice: File f = new File(C:\prova.txt); File cartella = new File(C:\cartella); File f = new File(C:\, prova.txt); File f = new File(cartella,prova.txt); Metodi principali

Accesso ai dati Il meccanismo di lettura e scrittura dei dati è basato sul concetto di stream Sequenza ordinata di dati che hanno una sorgente (flussi di ingresso) o una destinazione (flussi di uscita) Per gestire gli stream abbiamo classi che agiscono da "lettori" e "scrittori ProgrammaJavaDispositivoI/O ProgrammaJavaDispositivoI/O INPUT STREAM OUTPUT STREAM stream di caratteri (16 bit) stream di byte (8 bit)

Algoritmi standard di lettura/scrittura 1) Apertura dello stream di input 2) while ci sono dati da leggere: Lettura dei dati in input 3) Chiusura dello stream 1) Apertura dello stream di 2) while ci sono dati da scrivere: Scrittura dei dati in 3) Chiusura dello stream Algoritmo di lettura Algoritmo di scrittura

Stream di Caratteri Le classi astratte Reader e Writer forniscono le API e una parziale implementazione di stream di caratteri, rispettivamente, di input e output; Reader InputStreamReaderFileReader BufferedReader Writer OutputStreamWriterFileWriter BufferedWriter Lettura e scrittura tramite buffer Riduce accessiAumenta efficienza

File inputFile = new File("input.txt"); File outputFile = new File("output.txt"); FileReader in = new FileReader(inputFile); FileWriter out = new FileWriter(outputFile); BufferedReader inb = new BufferedReader(in); BufferedWriter outb = new BufferedWriter(out); int c; while ((c = inb.read()) != -1) outb.write(c); inb.close(); outb.close(); Istanzio gli oggetti Scorro e scrivo Chiudo gli stram

Stream di byte Le classi astratte InputStream e OutputStream forniscono le API e una parziale implementazione di stream di byte di input e output InputStream FileInputStream OutputStream FileoutputStream ObjectInputStream ObjectOutputStream serializzare Permettono di serializzare un oggetto codificarlo come stream di byte Solo se oggetto implementa Interfaccia SERIALIZABLE

FileOutputStream out = new FileOutputStream("temp.dat"); ObjectOutputStream s = new ObjectOutputStream(out); s.writeObject("Oggi"); s.writeObject(new Date()); s.flush(); FileInputStream in = new FileInputStream("temp.dat"); ObjectInputStream i = new ObjectInputStream(in); String today = (String)i.readObject(); Date date = (Date)i.readObject(); Scrive su file i due oggetti Legge da file i due oggetti