您好、欢迎来到现金彩票网!
当前位置:2019欢乐棋牌 > 字节流报 >

java字节流字符流问题怎么判断一个文件要用字节流还是用字符流

发布时间:2019-07-29 20:36 来源:未知 编辑:admin

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  2013-04-15展开全部有中文就用字符流,没中文可以用字节流,这个应该根据你具体情况而定,就是看这个文件里面内容的字符是什么样的,像中文就是一个字节放不下,需要用两个字节来存储,那么字符流一个字符一个字符的往里读,所以能读出来,你用字节流就不行了,一个字符一个字符的往里读,把一个汉字拆成一半了,到时候操作系统不认识,显示都问号,

  一看到二进制你有啥不明白的,好多人都知道java里面1个字符等于2个字节,1个字节等于8位,像背顺口溜一样,其实啥意思都不知道,我都服了,1个字节等于8位,8位啥呀?2进制代码啊,也就是01序列,这个序列是8位数,中文比较大,得占16位,所以是2个字节。 答案补充 第三行打错字了,是:用字节流就不行了,一个字节一个字节的往里读 答案补充 谁拷贝答案了,哪些答案都是垃圾,没一个正确的,我拷贝它干什么,

  内存的存储体上面分若干个存储单元,一个存储单元可以存储8位或者16为,或者32位的,或者....的01序列,一个字节等于8位,比如11111111,一个汉字在计算机内部要使用2个字节来存储,一个装不下,也就是16位的01,你用字节流读,一下读8位出来,还有8位给人家仍了那能行,么 答案补充 赶紧看 计算机组成原理 去吧

  学习JavaIO流,我是真的有点无语啊。。。!相信很多学习Java的朋友在起初学习JavaIO的时候都会觉得很简单,可是真正用的使用的时候又措手不及,这是一个比较正常的现象,这不能怪你,因为Java设计者在设计JavaIO这个类库时,就已然注定了这样蛋疼的一个局面。JavaIO的学习之难,主要有两点:其一是构建一个实例需要借助其他的一个或多个实例,其次是类多而杂。你需要以一种俯瞰的视角来对待JavaIO,只要你了解了JavaIO类库的层次关系,你就可以很好的使用它了,是不是很激动...^_^,下面让我们来看看流的概念:

  流:是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称和抽象。即数据在两设备间的传输成为流,流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作。

  字符流的由来:因为数据编码的不同,而有了对字符进行高效操作的流对象。本质其实就是基于字节流读取时,去查了指定的码表。

  (1)读写单位不同:字节流以字节(8bit)为单位,字符流以字符(16bit)为单位,根据码表映射字符。

  (2)处理对象不同:字节流能处理所有类型的数据(如:图片、音乐、视频等媒体介质),而字符流只能处理字符类型的数据。

  (3)字节流在操作的时候本身是不会用到缓冲区的,是文件本身的直接操作的;而字符流在操作的时候是会用到缓冲区的,是通过缓冲区来操作文件。

  字节流是最基本的,所有的InputStream和OutputStream的子类都是,主要用在处理二进制数据,它是按字节来处理的

  但实际中很多的数据是文本,又提出了字符流的概念,它是按虚拟机的encode来处理,也就是要进行字符集的转化

  在实际开发中出现的汉字问题实际上都是在字符流和字节流之间转化不统一而造成的

  有一个关键的参数字符集编码,通常我们都省略了,那系统就用操作系统的lang

  至于java.io中还出现了许多其他的流,按主要是为了提高性能和使用方便,

  字符输入输出流会自动在内部完成字节流中字节的解码与编码,使用起来要方便一些(相比用字节输入输出流读取后或写入前自己完成字符的解码编码)。

http://hazardlabo.com/zijieliubao/359.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有