Читайте также: |
|
Классы BufferedInputStream, BufferedOutputStream,
BufferedReader, BufferedWriter
используются для повышения производительности при работе с другими потоками.
При создании потока в качестве параметра указывается уже существующий поток, например:
BufferedReader br =
new BufferedReader(new FileReader("file.dat"));
Дальнейшая работа с потоком осуществляется как обычно.
Бинарный ввод-вывод
Классы DataInputStream, DataOutputStream используются для ввода-вывода значений примитивных типов данных с сохранением их двоичного представления.
При создании потока в качестве параметра указывается уже существующий байтовый поток, например:
DataInputStream dis =
new DataInputStream(new FileInputStream("file.dat"));
При работе с потоками используются методы:
Для чтения для записи
boolean readBoolean() void writeBoolean(boolean v)
byte readByte() void writeByte(int v)
char readChar() void writeChar(int v)
double readDouble() void writeDouble(double v)
float readFloat() void writeFloat(float v)
int readInt() void writeInt(int v)
long readLong() void writeLong(long v)
short readShort() void writeShort(short v)
Пример. Запись переменных в поток
DataOutputStream dos = new DataOutputStream(...);
dos.writeBoolean(b); // логическая
dos.writeDouble(d); // дробная
dos.writeInt(i); // целая
Dos.close();
Пример. Чтение переменных из потока
DataInputStream dis = new DataInputStream(...);
b=dis.readBoolean(); // логическая
d=dis.readDouble(); // дробная
i=dis.readInt(); // целая
Dis.close();
Ввод-вывод объектов
Классы ObjectInputStream, ObjectOutputStream используются для ввода-вывода объектов из байтовых потоков.
При создании потока в качестве параметра указывается уже существующий байтовый поток, например:
ObjectInputStream ois =
new ObjectInputStream(new FileInputStream("file.dat"));
При работе с потоками могут использоваться те же методы, что и у классов DataInputStream, DataOutputStream, и два специальных метода:
Object readObject()
для чтения объекта из потока
void writeObject(Object obj)
для записи объекта в поток
Пример. Запись объекта (массива) в поток
ObjectOutputStream oos=new ObjectOutputStream(...);
int intmas[]=new int[]{1,2,3,4,5};
Oos.writeObject(intmas);
Oos.close();
Пример. Чтение объекта (массива) из потока
ObjectInputStream ois=new ObjectInputStream(...);
int intmas[]=(int []) ois.readObject();
Ois.close();
Дата добавления: 2015-09-11; просмотров: 79 | Поможем написать вашу работу | Нарушение авторских прав |