Sei sulla pagina 1di 5

Marco Palena Prontuario di Programmazione a Oggetti: Java Package di I/O

Classe astratta che dichiara i metodi per leggere byte a partire da sistema. Prevede il costruttore:
Package di I/O una sorgente specifica. Tutti i metodi definiti sono implementati
dalle classi BufferedInputStream, DataInputStream e Costruttore Descrizione
java.io Definisce l’I/O in termini di flussi (stream). FileInputStream. Possono sollevare eccezioni di tipo IOException.
java.nio Definisce l’I/O in terminin di buffer e canali. Incapsula il flusso in da cui
DataInputStream(InputStream in)
leggere i dati primitivi.
Metodo Descrizione
java.io Legge un singolo byte di dati e lo
Definisce l'I/O in termini di flussi: Implementa i metodi definiti dall'interfaccia DataInput che possono
restituisce sotto forma di interno
• Flussi di byte;
int read() lanciare IOException in caso di errore e EOFException quando viene
compreso tra 0 e 255. Se si è raggiunta la
raggiunta la fine del flusso:
• Flussi di caratteri; fine del flusso ritorna -1.
Legge una sequenza di byte e la Metodo Descrizione
Flussi di byte memorizza in una parte di array di byte
buf. I byte vengono memorizzati a Legge un carattere Unicode dal flusso di
char readChar()
int read(byte[] buf, int input.
Classi astratte Implementazioni offset, int count) partire dalla posizione offset fino a offset
+ cont-1. Ritorna il numero di byte letti. Legge un intero con segno a 8 bit dal
BufferedInputStream Se non si è letto neanche un byte perchè byte readByte()
flusso di input.
InputStream DataInputStream si è raggiunta la fine del flusso ritorna -1.
Legge un intero con segno a 16 bit dal
Legge un numero di byte pari alla short readShort()
FileInputStream flusso di input.
dimensione di buf e li memorizza nello
BufferedOutputStream int read(byte[] buf)
stesso. Legge un intero con segno a 32 bit dal
int readInt()
Equivale a int read(buf, 0, buf.length). flusso di input.
OutputStream DataOutputStream
Chiude il flusso di byte rilasciandone le Legge un intero con segno a 64 bit dal
FileOutputStream void close() long readLong()
risorse. flusso di input.

InputStream Legge un numero floating point con


float readFloat()
BufferedInputStream segno a 32 bit dal flusso di input.
Implementazione di InputStream che memorizza i dati in un buffer
InputStream Legge un numero floating point con
in modo da evitare che le operazioni di read si rivolgano double readDouble()
segno a 364bit dal flusso di input.
direttamente al flusso successivo. Comprende i costruttori:
Legge un valore booleano dal flusso di
boolean readBoolean()
Costruttore Descrizione input.
DataInput
ByteArrayInputStream Incapsula il flusso in Legge una stringa con codifica UTF-8
BufferedInputStream(InputStream String readUTF()
utilizzando un buffer di dal flusso di input.
FileInputStream in)
dimensioni di default.
ObjectInputStream DataInputStream Incapsula il flusso in FileInputStream
BufferedInputStream(InputStream Implementazione di InputStream che permette di trattare un file
FilterInputStream BufferedInputStream in, int size) utilizzando un buffer di
dimensioni size. come sorgente di un flusso di byte. Prevede i costruttori (che
PipeInputStream PushbackInputStream possono lanciare l'eccezione FileNotFoundException nel caso il file
indicato non esista):
SequenceInputStream DataInputStream
Implementazione di InputStream che permette di leggere tipi di dati
Costruttore Descrizione
StringBufferInputStream primitivi da un flusso di byte di input in modo indipendente dal

1
Marco Palena Prontuario di Programmazione a Oggetti: Java Package di I/O

Crea un flusso di input che permette buffer dei byte provenienti da vari flusso di output.
FileInputStream(String
filename) di leggere byte dal file specificato metodi write, flush li scrive
Scrive un intero con segno a 32 bit sul
dalla stringa filename. immediatamente sulla destinazione. void writeInt(int i)
flusso di output.
Se la destinazione è un'altro flusso
Crea un flusso di input che permette
anche questo verrà sottoposto a Scrive un intero con segno a 64 bit sul
FileInputStream(File file) di leggere byte dal file a cui fa void writeLong(long l)
flush e così via. flusso di output.
riferimento l'oggeto di tipo File.
Chiude il flusso di byte Scrive un numero floating point con
void close() void writeFloat(float f)
rilasciandone le risorse. segno a 32 bit sull flusso di output.
OutputStream
Flushable Scrive un numero floating point con
void writeDouble(double d)
BufferedOutputStream segno a 64 bit sull flusso di output.
OutputStream Implementazione di OutputStream che memorizza i dati in un
buffer in modo da evitare che le operazioni di write si rivolgano void writeBoolean(boolean Scrive un valore booleano sul flusso
Closeable b) di output.
direttamente al flusso successivo. Comprende i costruttori:
Scrive una stringa con codifica UTF-
void writeUTF(String str)
DataOutput Costruttore Descrizione 8 sul flusso di output.
ByteArrayOutputStream
Incapsula il flusso out
BufferedOutputStream(OutputStream FileOutputStream
FileOutputStream
out) utilizzando un buffer di
dimensioni di default. Implementazione di OutputStream che permette di trattare un file
ObjectOutputStream DataOutputStream come destinazione di un flusso di byte. Prevede i costruttori (che
Incapsula il flusso out possono lanciare un'eccezione IOException):
FilterOutputStream BufferedOutputStream BufferedOutputStream(OutputStream
out, int size) utilizzando un buffer di
dimensioni size.
PipedOutputStream PrintStream Costruttore Descrizione

DataOutputStream Crea un flusso di output che permette


Classe astratta che dichiara i metodi per scrivere byte su una FileOutputStream(String di scrivere byte sul file specificato
destinazione specifica. Tutti i metodi definiti sono implementati Implementazione di OutputStream che permette di scrivere tipi di filename) dalla stringa filename. Se tale file
dalle classi BufferedOutputStream, DataOutputStream e dati primitivi su un flusso di byte di output in modo indipendente
dal sistema. Prevede il costruttore: non esiste viene creato.
FileOutputStream. Possono sollevare eccezioni di tipo IOException.
Crea un flusso di output che permette
Costruttore Descrizione di scrivere byte sul file a cui fa
Metodo Descrizione FileOutputStream(File file)
riferimento l'oggeto di tipo File. Se
Scrive gli 8 bit meno significativi DataOutputStream(OutputStream Incapsula il flusso out su cui tale file non esiste viene creato.
void write(int b) out) scrivere i dati primitivi.
di b sotto forma di byte.
Implementa i metodi definiti dall'interfaccia DataOutput che
Scrive una parte di array di byte possono lanciare IOException in caso di errore: Flussi di caratteri
void write(byte [] buf, int cominciando da buf[offset] e
offset, int count) scrivendo un numero di byte pari a
count. Metodo Descrizione Classi astratte Implementazioni

Scrive tutti i byte presenti nell'array Scrive un carattere Unicode sul flusso BufferedReader
void writeChar(char ch)
void write(byte [] buf) di byte buf. Equivale a write(buf, 0, di output. Reader InputStreamReader
buf.length).
Scrive un intero con segno a 8 bit sul
void writeByte(byte b) FileReader
void flush() Effettua lo svuotamento del flusso. flusso di output.
Se questo ha memorizzato un void writeShort(short s)
Writer BufferedWriter
Scrive un intero con segno a 16 bit sul

2
Marco Palena Prontuario di Programmazione a Oggetti: Java Package di I/O

OutputStreamWriter stesso. provenienti da in utilizzando la


Equivale a int read(buf, 0, buf.length). codifica di default.
FileWriter
Chiude il flusso di caratteri rilasciandone
void close()
Reader le risorse. FileReader
Implementazione di Reader che estende InputStreamReader e
permette di trattare un file come sorgente di un flusso di caratteri.
Reader Closeable BufferedReader
Prevede i costruttori (che possono lanciare l'eccezione
Implementazione di Reader che memorizza i caratteri letti in un
FileNotFoundException nel caso il file indicato non esista):
buffer in modo da evitare che le operazioni di read si rivolgano
direttamente al flusso successivo. Comprende i costruttori:
Costruttore Descrizione
BufferedReader LineNumberReader Crea un flusso che permette di
Costruttore Descrizione FileReader(String filename) leggere caratteri dal file specificato
CharArrayReader
dalla stringa filename.
Incapsula il flusso in
FilterReader PushbackReader BufferedReader(Reader in) utilizzando un buffer di Crea un flusso che permette di
InputStreamReader FileReader dimensioni di default. FileReader(File file) leggere caratteri dal file a cui fa
riferimento l'oggeto di tipo File.
Incapsula il flusso in
PipeReader
BufferedReader(Reader in, int size) utilizzando un buffer di
StringReader dimensioni size. Writer
Flushable

Classe astratta che dichiara i metodi per leggere caratteri a partire da Oltre ai metodi propri di Reader la classe BufferedReader offre il Writer
una sorgente specifica. Tutti i metodi definiti sono implementati metodo readLine che può sollevare IOException:
dalle classi BufferedReader, InputStreamReader e FileReader. Closeable
Possono sollevare eccezioni di tipo IOException. Metodo Descrizione
Legge una linea di testo. Una linea è una
Metodo Descrizione sequenza di caratteri terminata da un BufferedWriter

Legge un singolo carattere e lo restituisce separatore di riga quali line feed (\n) e CharArrayWriter
sotto forma di interno compreso tra 0 e String readLine() carriage return (\r). La stringa restituita
int read()
65535. Se si è raggiunta la fine del flusso non comtiene separatori di riga. Se si FilterWriter
ritorna -1. incontra la fine del flusso prima del
separatore di riga viene ritornato null. OutputStreamWriter FileWriter
Legge una sequenza di caratteri e la
memorizza in una parte di array di char PipeWriter
buf. I caratteri letti vengono memorizzati InputStreamReader
Implementazione di Reader che permette la conversione da un StringWriter
int read(char[] buf, int a partire dalla posizione offset fino a
offset, int count) offset + cont-1. Ritorna il numero di flusso di byte di input ad un flusso di caratteri di input utilizzando PrintWriter
caratteri letti. Se non si è letto neanche una codifica specifica o di default. Prevede il costruttore:
un carattere perchè si è raggiunta la fine
del flusso ritorna -1. Costruttore Descrizione
Legge un numero di caratteri pari alla InputStreamReader(InputStream Classe astratta che fornisce metodi per scrivere caratteri su una
int read(char[] buf)
Crea un flusso in grado di
dimensione di buf e li memorizza nello in)
tradurre in caratteri i byte destinazione specifica. Tutti i metodi definiti sono implementati
dalle classi BufferedWriter, OutputStreamWriter e FileWriter.

3
Marco Palena Prontuario di Programmazione a Oggetti: Java Package di I/O

Possono sollevare eccezioni di tipo IOException. dimensioni size. OutputStream PrintStream


Writer PrintWriter
Metodo Descrizione
Oltre ai metodi propri di Writer la classe BufferedWriter offre il
Scrive i 16 bit meno significativi di metodo newLine che può sollevare IOException: Forniscono metodi che permettono la scrittura formattata e non di
void write(int ch)
ch sotto forma di carattere. valori appartenenti a tipi primitivi in un flusso.
Scrive una parte di array di caratteri Metodo Descrizione
void write(char [] buf, int cominciando da buf[offset] e PrintStream
void newLine() Scrive nel flusso un separatore di righe.
offset, int count) scrivendo un numero di caratteri pari Implementazione di OutputStream che permette la scrittura
a count. formattata e non di tipi primitivi su un flusso di byte. Prevede i
OutputStreamWriter costruttori:
Scrive sul flusso un numero di Implementazione di Writer che permette la conversione di un flusso
void write(String str, int
offset, int count) caratteri pari a count della stringa str di caratteri di output in un flusso di byte di output utilizzando una
Costruttore Descrizione
cominciando da str.charAt(offset). codifica specifica o di default. Prevede il costruttore:
Crea un flusso in grado di scrivere
Scrive sul flusso la stringa str.
void write(String str)
Costruttore Descrizione output di tipi primitivi sotto forma
Equivale a write(str, 0 str.length()).
di byte con destinazione out. Se
PrintStream(OutputStream
Scrive tutti i caratteri presenti Crea un flusso in grado di out, boolean autoflush) autoflush è true allora verrà
void write(byte [] buf) nell'array di byte buf. Equivale a OutputStreamWriter(OutputStre tradurre in byte i caratteri eseguito il flush del flusso ogni
write(buf, 0, buf.length). am out) destinati a out utilizzando la volta che un carattere newline
Effettua lo svuotamento del flusso. codifica di default. viene scritto.
Se questo ha memorizzato un buffer Crea un flusso in grado di scrivere
dei caratteri provenienti da vari PrintStream(OutputStream
FileWriter output di tipi primitivi sotto forma
out)
metodi write, flush li scrive Implementazione di Writer che estende OutputStreamWriter e di byte con destinazione out.
void flush()
immediatamente sulla destinazione. permette di trattare un file come destinazione di un flusso di
Se la destinazione è un'altro flusso caratteri. Prevede i costruttori (che possono lanciare un eccezione Crea un flusso in grado di scrivere
anche questo verrà sottoposto a flush IOException):
output di tipi primitivi sotto forma
e così via. PrintStream(String filename) di byte con destinazione il file
specificato da filename. Può
Chiude il flusso di caratteri Costruttore Descrizione sollevare FileNotFoundException.
void close()
rilasciandone le risorse. Crea un flusso di output che permette Crea un flusso in grado di scrivere
di scrivere caratteri sul file output di tipi primitivi sotto forma
FileWriter(String filename)
BufferedWriter specificato dalla stringa filename. Se PrintStream(File file) di byte con destinazione il file
Implementazione di Writer che memorizza i caratter in un buffer in tale file non esiste viene creato. specificato da file. Può sollevare
modo da evitare che le operazioni di write si rivolgano direttamente FileNotFoundException.
Crea un flusso di output che permette
al flusso successivo. Comprende i costruttori:
di scrivere caratteri sul file a cui fa
FileWriter(File file)
riferimento l'oggeto di tipo File. Se Fornisce i metodi necessari per la scrittura di output formattato e
Costruttore Descrizione tale file non esiste viene creato. non sotto forma di byte (tali metodi non lanciano IOException):
Incapsula il flusso out
BufferedWriter(Writer out) utilizzando un buffer di Flussi Print Metodo Descrizione
dimensioni di default. void print(type t) Stampa il valore di t. Tale metodo è
BufferedWriter(Writer out, int size) Incapsula il flusso out Classi astratte Implementazioni sovraccaricato per i tipi int, long,
utilizzando un buffer di char, float, double, String, char[],

4
Marco Palena Prontuario di Programmazione a Oggetti: Java Package di I/O

boolean e Object sollevare FileNotFoundException.


Stampa il valore di t seguito da un Crea un flusso in grado di scrivere
separatore di riga. Tale metodo è output di tipi primitivi sotto forma
void println(type t) sovraccaricato per i tipi int, long, PrintWriter(File file) di caratteri con destinazione il file
char, float, double, String, char[], specificato da file. Può sollevare
boolean e Object . FileNotFoundException.

Stampa i valori passati come


PrintStream printf(String sequenza di parametri args secondo Fornisce i metodi necessari per la scrittura di output formattato e
format, Object...args) il formato format. Ritorna non sotto forma di caratteri (tali metodi non lanciano IOException):
PrintStream l'oggeto stesso.
Metodo Descrizione
PrintWriter Stampa il valore di t. Tale metodo è
Implementazione di Writer che permette la scrittura formattata e non sovraccaricato per i tipi int, long,
void print(type t)
di tipi primitivi su un flusso di caratteri. Prevede i costruttori: char, float, double, String, char[],
boolean e Object
Costruttore Descrizione Stampa il valore di t seguito da un
Crea un flusso in grado di scrivere separatore di riga. Tale metodo è
void println(type t) sovraccaricato per i tipi int, long,
output di tipi primitivi sotto forma
char, float, double, String, char[],
di caratteri con destinazione out.
PrintWriter(Writer out, boolean e Object .
boolean autoflush) Se autoflush è true allora verrà
eseguito il flush del flusso ogni Stampa i valori passati come
volta che viene invocato il metodo PrintStream printf(String sequenza di parametri args secondo
println(). format, Object...args) il formato format. Ritorna
Crea un flusso in grado di scrivere PrintStream l'oggeto stesso.
PrintWriter(Writer out) output di tipi primitivi sotto forma
di caratteri con destinazione out.
Flussi Standard
Crea un flusso in grado di scrivere
output di tipi primitivi sotto forma
di byte con destinazione out. Se Classi Tipo
PrintWriter(OutputStream
out, boolean autoflush) autoflush è true allora verrà System.in InputStream
eseguito il flush del flusso ogni
volta che viene invocato il metodo System.err PrintStream
println().
System.out PrintStream
Crea un flusso in grado di scrivere
PrintWriter(OutputStream
out) output di tipi primitivi sotto forma
di byte con destinazione out.
PrintWriter(String filename) Crea un flusso in grado di scrivere
output di tipi primitivi sotto forma
di caratteri con destinazione il file
specificato da filename. Può