字节流和字符流

在这里插入图片描述

在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据的时候要使用输入流读取数据,而当程序需要将一些数据保存起来的时候,就要使用输出流完成。

程序中的输入输出都是以流的形式保存的,流中保存的实际上全都是字节文件。

字节流与字符流

在java.io包中操作文件内容的主要有两大类:字节流、字符流,两类都分为输入和输出操作。在字节流中输出数据主要是使用OutputStream完成,输入使的是InputStream,在字符流中输出主要是使用Writer类完成,输入流主要使用Reader类完成。(这四个都是抽象类)

java中提供了专用于输入输出功能的包Java.io,其中包括:
InputStream,OutputStream,Reader,Writer
InputStream 和OutputStream,两个是为字节流设计的,主要用来处理字节或二进制对象,
Reader和 Writer.两个是为字符流(一个字符占两个字节)设计的,主要用来处理字符或字符串.

字符流处理的单元为2个字节的Unicode字符,分别操作字符、字符数组或字符串,而字节流处理单元为1个字节,操作字节和字节数组。所以字符流是由Java虚拟机将字节转化为2个字节的Unicode字符为单位的字符而成的,所以它对多国语言支持性比较好!如果是音频文件、图片、歌曲,就用字节流好点,如果是关系到中文(文本)的,用字符流好点
所有文件的储存是都是字节(byte)的储存,在磁盘上保留的并不是文件的字符而是先把字符编码成字节,再储存这些字节到磁盘。在读取文件(特别是文本文件)时,也是一个字节一个字节地读取以形成字节序列

  字节流可用于任何类型的对象,包括二进制对象,而字符流只能处理字符或者字符串; 2. 字节流提供了处理任何类型的IO操作的功能,但它不能直接处理Unicode字符,而字符流就可以
   字节流是最基本的,所有的InputStrem和OutputStream的子类都是,主要用在处理二进制数据,它是按字节来处理的 但实际中很多的数据是文本,又提出了字符流的概念,它是按虚拟机的encode来处理,也就是要进行字符集的转化 这两个之间通过 InputStreamReader,OutputStreamWriter来关联,实际上是通过byte[]和String来关联 在实际开发中出现的汉字问题实际上都是在字符流和字节流之间转化不统一而造成的

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值