Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
shpory_java_2_semtcnh.doc
Скачиваний:
2
Добавлен:
22.09.2019
Размер:
425.98 Кб
Скачать

Иерархия типов в java.Io

1.класс File- предназначен для работы с файлами на уровне имен и каталогов(ничего не записываем и не считываем, только получаем информацию)

2.класс FileDescriptor- позволяет получать некоторую системную информацию о файле

3.класс StreamTokenizer- позволяет выделять из потоков лексемы

4. класс RandomAccessFile- предназначен для работы с файлами в режиме прямого доступа, реализует интерфейсы DataInput и DataOutput, что позволяет записывать в файл (или считывать) любые примитивные данные Java.

5. SequenceInputStream – позволяет объединить несколько входных потоков в один единый поток.

6.StringBufferInputStream- позволяет читать данные со строки, рассматривая строку как поток байтов

7.ByteArrayInputStream-входной поток рассматривает как массив байтов (в ОЗУ), парный ByteArrayOutputStream

8.PipedInputStream(конвеерный поток)- для связи двух потоков выполнения, парный PipedOutputStream

9.FileInputStream – FileOutputStream- для записи и чтения информации из файлов

10.FilterInputSream-FielterOutputSream (классы- фильтры или оболочки), каждый фильтр позволяет осуществлять дополнительную обработку информации, содержащейся в потоке.

Фильтры

11.LineNumberInputSream- позволяет пронумеровать строки входного потока

12.BufferedInputSream (буферизованный ввод)-BufferedOutputStream позволяют использовать буферизацию при вводе или выводе данных из потока, с помощью буферов обмен информацией осуществляется быстрее

13.DataInputSream-DataOutputStream эти классы реализуют интерфейсы DataInput и DataOutput и позволяют записывать и считывать любые примитивные типы ЯВА в потоке.

14. PushbackInputStream- позволяет осуществлять повторное чтение «откатанных байтов» ,т.е. прочитали байт и обратно возвращаемся

15.PrintStream- предназначен для вывода данных на экран

Классы DataInputStream и DataOutputStream

Для работы с другими примитивными типами данных в Java определены интерфейсы DataInput и DataOutput и их реализация – классы фильтры DataOutputStream и DataInputStream.

DataInputStream и DataOutputStream относятся к так называемым фильтровым классам, то есть классам, задающим фильтры для чтения и записи определенных форматов данных. Фильтровые классы не работают сами по себе, а принимают или отсылают данные простым потокам FileInputStream, FileOutputStream и т. д.

Класс DataInputStream содержит методы, позволяющие извлекать из входного потока данные следующих форматов: целые числа и числа типа double, числа в формате с плавающей десятичной точкой, массивы байт и символов, или как говорят, выполнять форматированный ввод данных. Он также реализует интерфейс DataInput, служащий для этой же цели. Поэтому класс DataInputStream очень удобен и часто применяется в приложениях для работы с потоками ввода.

Конструктор класса DataInputStream должен получить через свои параметр ссылку на объект класса InputStream.

UTF(“Unicode Transmission Format”)

Символы Unicode переводятся в компактную двоичную форму, спроектированную для кодровки 16.

--public abstract String readLine()v throws IOException (читает строку до нахождения символов \n, \r или пары \n\r)

--public abstract void writeChars(String s) throws IOException (запись строки в виде последовательности значений типа char)

Для записи строк используется метод void writeUTF (String aString) UTF (Unicode Transmission Format) – указывает на конкретный метод кодирования строки (UTF-8)

Для чтения строки из файла используется методString readUTF ()

С помощью класса DataOutputStream приложения Java могут выполнять форматированный вывод данных. Для ввода форматированных данных вы должны создать входной поток с использованием класса DataInputStream, о котором мы уже говорили. Класс DataOutputStream реализует интерфейс DataOutput.

Обычное создание потока вывода данных на базе класса DataOutputStream сводится к одной строке:

DataOutStream is = new DataOutStream(new FileOutputStream ( "data.dat" ));

После того как поток создан, в него можно выводить форматированные данные. Для этого в арсенале класса DataOutputStream имеется целый набор методов writeXXX() для записи различных данных, где XXX - название типа данных. Вот так выглядит фрагмент кода для вывода в созданный нами поток data.dat:

dos.writeDouble(doubleVar);

dos.writeInt(intVar);

dos.writeChars(StringVar);

dos.close();

Имена методов говорят о том, какой тип данных они выводят.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]