社区
Web 开发
帖子详情
请问字符流和字节流有什么区别?
TiShen
2007-04-13 12:12:43
理论上的区别小弟已经看过书了,问题是书上过于理论,只是用术语讲解。
请各位高手回答小弟时用具体的实例,比如字符流在处理某些文件时占优势或者字节流根本就不能处理某些字符等等等等。
万分感谢!
...全文
1491
2
打赏
收藏
请问字符流和字节流有什么区别?
理论上的区别小弟已经看过书了,问题是书上过于理论,只是用术语讲解。 请各位高手回答小弟时用具体的实例,比如字符流在处理某些文件时占优势或者字节流根本就不能处理某些字符等等等等。 万分感谢!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
YOYOOOP
2007-04-13
打赏
举报
回复
所有文件的储存是都是字节(byte)的储存,在磁盘上保留的并不是文件的字符而是先把字符编码成字节,再储存这些字节到磁盘。在读取文件(特别是文本文件)时,也是一个字节一个字节地读取以形成字节序列.
int i= 7 那么i为一个字符.在Java中用两个字节表示值为0x0007
______________________________________________________________________________________________
1.字节流可用于任何类型的对象,包括二进制对象,而字符流只能处理字符或者字符串;
2. 字节流提供了处理任何类型的IO操作的功能,但它不能直接处理Unicode字符,而字符流就可以。
______________________________________________________________________________________________
字节流是最基本的,所有的InputStrem和OutputStream的子类都是,主要用在处理二进制数据,它是按字节来处理的
但实际中很多的数据是文本,又提出了字符流的概念,它是按虚拟机的encode来处理,也就是要进行字符集的转化
这两个之间通过 InputStreamReader,OutputStreamWriter来关联,实际上是通过byte[]和String来关联
在实际开发中出现的汉字问题实际上都是在字符流和字节流之间转化不统一而造成的
在从字节流转化为字符流时,实际上就是byte[]转化为String时,
public String(byte bytes[], String charsetName)
如//把字符串按GB2312解码
hello = new String(hello.getBytes(), "GB2312");
有一个关键的参数字符集编码,通常我们都省略了,那系统就用操作系统的lang
而在字符流转化为字节流时,实际上是String转化为byte[]时,
byte[] String.getBytes(String charsetName)
如//把字符串按UTF8解码成字节流,并打印相应的字节
hello = new String(hello.getBytes("UTF8"));
也是一样的道理
至于java.io中还出现了许多其他的流,按主要是为了提高性能和使用方便,
如BufferedInputStream,PipedInputStream等
(转载)_
zhaochunhui
2007-04-13
打赏
举报
回复
字节流与字符流主要的区别是他们的的处理方式
字节流是最基本的,所有的InputStrem和OutputStream的子类都是,主要用在处理二进制数据,它是按字节来处理的
但实际中很多的数据是文本,又提出了字符流的概念,它是按虚拟机的encode来处理,也就是要进行字符集的转化。在从字节流转化为字符流时,实际上就是byte[]转化为String时,
public String(byte bytes[], String charsetName)
有一个关键的参数字符集编码,通常我们都省略了,那系统就用操作系统默认的lang
Java I/O 第二版
OReilly.Java.I.O.2nd.Edition.May.2006 Java的io包主要包括: 1. 两种流:
字节流
(byte Stream)和
字符流
(character stream),这两种流不存在所谓的谁代替谁、谁比谁高级之说,它们互为补充,只是侧重点不同而已。 2. 两种对称:1.
字节流
、
字符流
的对称;2.输入、输出的对称。 3. 一个桥梁:将
字节流
转变为
字符流
的InputStreamReader和OutputStreamWriter。
字符流
和
字节流
的
区别
字符流
和
字节流
的
区别
字符流
和
字节流
的
区别
: 1、读写单位不同:
字节流
以字节(8bit)为单位,
字符流
以字符为单位,根据码表映射字符,一次可能读多个字节。 2、处理对象不同:
字节流
能处理所有类型的数据(如图片、avi等),而
字符流
只能处理字符类型的数据。 3、处理方式不同: Java的
字节流
InputStream是所有字节输入流的...
java
字符流
和
字节流
的
区别
_java
字符流
与
字节流
的
区别
是什么
java中
字符流
与
字节流
的
区别
:1、
字节流
操作的基本单元为字节;
字符流
操作的基本单元为Unicode码元。2、
字节流
默认不使用缓冲区;
字符流
使用缓冲区。3、
字节流
通常用于处理二进制数据,实际上它可以处理任意类型的数据,但它不支持直接写入或读取Unicode码元;
字符流
通常处理文本数据,它支持写入及读取Unicode码元。
字节流
Java中的
字节流
处理的最基本单位为单个字节,它通常用来处理二进制数据。...
简述
字符流
与
字节流
的
区别
3. 处理方式:
字节流
和
字符流
的处理方式也不同。
字节流
以字节为单位进行读取和写入,可以直接读取和写入二进制数据。
字符流
以字符为单位进行读取和写入,需要进行字符编码和解码。4. 适用场景:
字节流
和
字符流
的适用场景也不同。1. 数据类型:
字节流
处理的是字节数据,而
字符流
处理的是字符数据。
字节流
以字节为单位进行读取和写入,而
字符流
以字符为单位进行读取和写入。2. 编码方式:
字节流
处理的是字节数据,而
字符流
处理的是字符数据。
字符流
需要指定字符集来进行字符编码和解码,而
字节流
则不需要。
字节流
与
字符流
的
区别
一、两者的组成不同: 1、
字节流
的组成:
字节流
是由字节组成的。 2、
字符流
的组成:
字符流
是由字符组成的。 二、两者的处理不同: 1、
字节流
的处理:主要用在处理二进制数据,它是按字节来处理的但实际中很多的数据是文本。 2、
字符流
的处理:按虚拟机的encode来处理,也就是要进行字符集的转化。
字节流
是由字节组成的;
字符流
是由字符组成的 Java里字符由两个字节组成. 1字符=2字节 JAVA中的
字节流
是采用ASCII编码的,
字符流
是采用好似UTF编码,支持中文的
字节流
与
字符流
主要的
区别
是他们的的处理方式
Web 开发
81,122
社区成员
341,744
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章