输入/输出流的分类:java.io包中 1.按数据流的方向不同分为:输入/输出流 2.按处理数据单位不同分为:字节/字符流 3.按照功能不同分为:节点/处理流 四种抽象流类型: ##字节流: 1.InputStream(输入流): //读取一个字节并以整数的形式返回(0~255), //如果返回-1已到输入流的末尾 int read() throws IOException //读取一系列字节并存储到一个数组buffer, //返回实际读取的字节数,如果读取前已到输入流的末尾返回-1 int read(byte[] buffer) throws IOException //读取length个字节, //并存储到一个字节数组buffer,从length位置开始 //返回实际读取的字节数,如果读取前已到输入流的末尾返回-1 int read(byte[] buffer,int offset,int length) throws IOException //跳过n个字节不读,返回实际跳过的字节数 long skip(long n) throws IOException //关闭流释放内存资源 void close() throws IOException 2.OutputStream(输出流): //向输出流中写入一个字节数据,该字节数据为参数b的低8位 void write(int b) throws IOException //将一个字节类型的数组中的数据写入输出流 void write(byte[] b) throws IOException //将一个字节类型的数组中的从指定位置(off)开始的 //len个字节写入到输出流 void write(byte[] b,int off,int len) throws IOExceptiom //将输出流中缓冲的数据全部写出到目的地 void flush() throws IOException //关闭流释放内存资源 void close() throws IOException ##字符流(1字符 == 2字节): 1.Reader(用于向程序中输入数据): //方法同InputStream中的方法类似 2.Writer(用于向程序中输出数据): //方法同OutputStream中的方法类似 总结: 1.四种最基本的抽象类:InputStream,OutputStream(字节流), Reader,Writer(字符流) 2.对文件读写:FileInputStream,FileOutputStream FileReader,FileWriter 3.带缓冲区的:BufferedInputStream,BufferedOutputStream BufferedReader,BufferedWriter 4.对一个内存里的字节数组进行读写:ByteArrayInputStream,ByteArrayOutputStream 5.转换流(把字节转换成字符):InputStreamReader,OutputStreamWriter 6.直接写基础的数据类型或unicode-8字符串类型:DataInputStream,DataOutputStream 7.打印流:PrintStream,PrintWriter 8.ObjectInputStream/ObjectOutputStream: Serializable接口:标记型接口,由JDK帮忙控制这个类的对象怎么进行序列化 transient关键字: Externalizable接口:自己控制这个类的对象怎么进行序列化
javase中IO流的学习笔记
最新推荐文章于 2024-08-26 16:40:46 发布