Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

СТП / lec / java2014-lec-09

.pdf
Скачиваний:
8
Добавлен:
03.03.2016
Размер:
1.95 Mб
Скачать

Соответствие узлов и потоков

 

 

 

 

Символьные

 

 

Байтовые

 

 

 

 

 

 

 

 

 

Тип

 

 

 

 

 

потоки

 

 

 

 

 

 

 

 

 

потоки

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Файл

 

 

FileReader

 

FileInputStream

 

 

 

 

 

 

 

 

 

FileWriter

 

FileOutputStream

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Память

 

 

CharArrayReader

 

ByteArrayInputStream

 

 

(массив)

 

 

CharArrayWriter

 

ByteArrayOutputStrearn

 

 

 

 

 

 

 

 

 

 

Память

 

 

StringReader

 

N/A

 

 

(строка)

 

 

StringWriter

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Процессы

 

 

PipedReader

 

PipedInputStream

 

 

 

 

PipedWriter

 

PipedOutputStream

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Иерархия дочерних классов для InputStream

Иерархия дочерних классов для OutputStream

Классы FileInputStream/FileOutputStream

http://docs.oracle.com/javase/7/docs/api/java/io/FileInputStream.html

http://docs.oracle.com/javase/7/docs/api/java/io/FileOutputStream.html

Классы ObjectInputStream/ObjectOutputStream

Java API предлагает стандартный механизм (называемый сериализацией), который полноценно автоматизирует процесс записи и чтение объектов из/в потоков.

При записи объекта сначала записывается имя класса, далее следует описание данных-членов класса, а затем располагаются все значения всех полей объекта.

При чтении объекта считывается имя класса и его описание для размещения класса в памяти, а затем выполняется чтение всех полей из потока для наполнения только что созданного экземпляра.

Постоянные места хранения (такие как файлы, например)

также могут быть использованы для сериализации.

Классы ObjectInputStream/ObjectOutputStream

http://docs.oracle.com/javase/7/docs/api/java/io/ObjectInputStream.html

http://docs.oracle.com/javase/7/docs/api/java/io/ObjectOutputStream.html

Класс PipeInputStream

http://docs.oracle.com/javase/7/docs/api/java/io/PipedInputStream.html

Класс PipeInputStream

http://docs.oracle.com/javase/7/docs/api/java/io/PipedInputStream.html

Класс PipeOutputStream

http://docs.oracle.com/javase/7/docs/api/java/io/PipedOutputStream.html

Порядок записи в байтовых потоках

DataOutputStream -> OutputStream

DatalnputStream -> InputStream

T readT()

boolean readBoolean()

void readFully(byte[] b)

void readFully(byte[] b, int off, int len)

void writeT(T e)

void writeBoolean(boolean e)

Запись данных всегда производится в формате

MSB (Most Significant Byte)

Соседние файлы в папке lec