编程语言
首页 > 编程语言> > 零基础java自学流程-Java语言高级462

零基础java自学流程-Java语言高级462

作者:互联网

四、字节流(InputStream、OutputStream,两个都是抽象类)

         1、I/O流用来处理设备之间的数据传输

            InputStream抽象了应用程序读取数据的方式

            OutputStream抽象了应用程序写出数据的方式

         2、EOF = End  读到 -1 就读到结尾

         3、输入流的基本方式主要是读

              int b = in.read();//读取一个字节无符号填充到int第八位,-1是EOF

              in.read(byte[] buf);//读入多个字节填充的字节数组

         4、输出流的基本方式主要是写

              out.write(int b);

              out.write(byte[] buf);

         5、FileInputStream具体实现了文件的读取操作

                while((b=in.read())!=-1){读一个文件}

                in.close();//一定要记得关闭流释放系统资源

                批量读取(速度非常快,效率高) vs. 单字节读取(不适合读大文件,效率很低)

          6、FileOutputStream具体实现了向文件中写数据的操作

                是删除文件重新创建,还是在原文件上追加内容,看构造方法

                自己实现文件的copy操作

                out.flush();

                out.close();

          7、数据输入输出流DataOutputStream/DataInputStream

                对流功能的扩展,是一个包装类,可以更加方便的读取int,long,字符等类型数据,本质是使用的一种装饰模式实现的

         8、字节缓冲流BufferedInputStream/BufferedOutputStream

                 为I/O提供了带缓冲区的操作,这种流模式提高了I/O的性能     

                 .write();

                 .flush();//刷新缓冲区,否则写入不到文件中

                 .close();


尚学堂给同学们带来全新的Java300集课程啦!java零基础小白自学Java必备优质教程_手把手图解学习Java,让学习成为一种享受_哔哩哔哩_bilibili尚学堂给同学们带来全新的Java300集课程啦本课程为Java300集2022版第一季,配合最新版的Java课程,所有视频重新录制,课件所有图形做了重新绘制和配色,图解学习Java,让学习成为一种享受本套教程专门为零基础学员而制,适合准备入行Java开发的零基础学员,视频中穿插多个实战项目。每一个知识点都讲解的通俗易懂,由浅入深。不仅适用于零基础的初学者,有经验的程序员也可做巩固学习。后续课https://www.bilibili.com/video/BV1qL411u7eE?spm_id_from=333.999.0.0

 

标签:文件,java,读取,int,462,Java,out,字节
来源: https://blog.csdn.net/Limingmingaa/article/details/122839814