【Java】字节流

举报
翟文彪 发表于 2021/12/26 00:27:24 2021/12/26
【摘要】 2.字节流 2.1 IO流概述和分类   IO流概述: IO:输入/输出(Input/Output) 流:使用抽象概念,是对数据传输的总称。也就是说数据在设备间的传输称为流,流的本质是数据传输 IO流就是用来处理设备间数据传输问题的         常见的应用:...

2.字节流

2.1 IO流概述和分类

 

IO流概述:

  • IO:输入/输出(Input/Output)

  • 流:使用抽象概念,是对数据传输的总称。也就是说数据在设备间的传输称为流,流的本质是数据传输

  • IO流就是用来处理设备间数据传输问题的

        常见的应用:文件复制;文件上传;文件下载

 

 2.1 IO流分类

分类:

  • 按数据的流向:

        输入流:读数据

        输出流:写数据

  • 按数据类型来分:

        字节流:

            字节输入流;字节输出流

        字符流:

            字符输入流;字符输出流

 

一般来说,我们说IO流的分类是按照数据类型来分的,那么这两种流在什么情况下使用呢?

 

    如果数据通过windows自带的记事本软件打开,我们还可以读懂里面的内容,就使用字符流,否则使用字节流。如果你不知道改用哪种类型的流,就使用字节流。

 

2.2字节流写数据

    字节流抽象基类:

  •     InputStream:这个抽象类是表示字节输入流的所有类的超类

  •     OutputStream:这个抽象类是表示字节输出流的所有类的超类

    子类名特点:子类名称都是以其父类名作为子类名的后缀

 

    FileOutputStream:文件输出流用于将数据写入File

  •     FileOutputStream(String name):创建文件输出流以指定的名称写入文件

 

    使用字节输出流写数据的步骤:

  •     创建字节输出流对象(调用系统功能创建了文件,创建字节输出流对象,让字节输出流对象指向文件)

  •     调用字节输出流对象的写数据的方法

  •     释放资源(关闭此文件输出流并释放与此流相关联的任何系统资源)

 

2.3字节流写数据的3种方式

 

2.4字节流写数据的两个小问题

字节流写数据如何实现换行呢?

  • 写完数据后,加换行符

        windows:\r\n

        linux:\n

        mac:\r

字节流写数据如何实现追加写入呢?

  • public FileOutputStearm(String name,boolean append)

  • 创建文件输出流以指定的名称写入文件。如果第二个参数为true,则字节将写入文件的末尾而不是开头。

 

2.5字节流写数据加异常处理

finally:在异常处理时提供finally块来执行所有清除操作。比如说IO流中的释放资源

特点:被finally控制的语句一定会执行,除非JVM退出

 

 

2.6字节流读数据(一次读一个字节数组数据)

需求:把文件fos.txt中的内容读取出来在控制台输出

 

使用字节输入流读数据的步骤:

①创建字节输入流对象 

②调用字节输入流对象的读数据方法

③释放资源

文章来源: blog.csdn.net,作者:翟文彪,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/zwb568/article/details/116191999

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。