数组流,数据流,对象流

一.数组流

1.流的源和目的地除了可以是文件外,还可以是计算机内存。

2.数组流可以分为两类:

(1)字节数组流

1)输入流:
构造方法:
ByteArrayInputStream(byte[] buf);
此构造方法的字节数组流的源是参数buf指定的数组的全部字节单元。

ByteArrayInputStream(byte[] buf ,int offset,int length);
此方法构造的字节数组流的源是buf指定的数组从offset处按顺序取length个字节单元。

常用方法:
public int read();
该方法可以顺序地从源中读取一个字节,返回读出的字节值。

public int read(byte[] b,int off,int len);
该方法可以顺序地从源中读出参数len指定的字节数,并将读出的字节存放在参数b指定的数组中,参数off指定数组b读出字节的起始位置,返回实际读出的字节个数,若未读出字节read方法返回-1.

2)输出流:
构造方法:
ByteArrayOutputStream();
该方法构造的字节数组输出空间指向一个默认大小为32字节的缓冲区,若输出流向缓冲区写入的字节个数大于缓冲区时,缓冲区的容量会自动增加。

ByteArrayOutputStream(int size);
此方法构造的字节数组输出流指向的缓冲区的初始大小由参数size指定,若输出流向缓冲区写入的字节个数大于缓冲区时,缓冲区的容量会自动的增加。

常用方法:
public void write(int b);
字节数组输出流可调用该方法顺序地向缓冲区写入一个字节。

public void write(byte[] b, int off, int len);
该方法可以将参数b中指定的len个字节顺序地写入缓冲区,参数off指定从b中写出的字节的起始位置。

public byte[] toByteArray();
该方法可以返回输出流写入到缓冲区的全部字节。

(2)字符数组流:将字节数组流中的Byte改为Char,其他相同。

二.数据流

1.什么是数据流?
DataInputStream和DataOutputStream类创建的对象称为数据输入流和数据输出流。

2.它的作用是什么?
它们允许程序按着机器无关的风格读取java原始数据,也就是说,当读取一个数值时,不必再关心这个数值应当是多少字节。

3.构造方法:
1)数据输入流:
DataInputStream(InputStream in);
此构造方法创建的数据输入流指向一个由参数in指定的底层输入流。

2)数据输出流
DataOutputStream(OutputStream out);
此构造方法创建的数据输出流指向一个由参数out指定的底层输出流。

4.常用方法
close();
关闭流。

readBoolean();
读取一个布尔值。

readByte();
读取一个字节。

readChar();
读取一个字符。

readDouble();
读取一个双精度浮点值。

readFloat();
读取一个单精度浮点值。

readInt();
读取一个整型值。

readLong();
读取一个长整型值。

readShort();
读取一个短整型值。

readUnsignedByte();
读取一个无符号字节。

readUnsignedShort();
读取一个无符号短整型值。

readUTF();
读取一个UTF字符串。

skipBytes(int n);
跳过给定数量的字节。

writeBoolean(boolean v);
写入一个布尔值。

writeBytes(String s);
写入一个字符串

writeChars(String s);
写入一个字符串

writeDouble(double v);
写入一个双精度浮点值

writeFloat(float v);
写入一个单精度浮点值

writeInt(int v);
写入一个整型值

writeLong(long v);
写入一个长整型值

writeShort(int v);
写入一个短整型值

writeUTF(String s);
写入一个UTF字符串

三.对象流

1.什么是对象流?
用ObjectInputStream和ObjectOutputStream类创建的对象称为对象输入(出)流。

2.作用
对象输入(出)流可以将一个对象写入到一个文件中(或读取一个对象到文件中)。

3.方法

ObjectInputStream(InputStream in);
此方法是对象输入流的构造方法。
readObject();
此方法读取一个对象到程序中。

ObjectOutputStream(OutputStream out);
此方法是对象输出流的构造方法。
writeObject(object obj);
此方法可以将obj写入一个文件中。

发布了35 篇原创文章 · 获赞 0 · 访问量 1287

猜你喜欢

转载自blog.csdn.net/c1776167012/article/details/104178687