黑马程序员技术交流社区
标题:
关于为什么不能用字符流复制MP3文件的问题
[打印本页]
作者:
yumin
时间:
2015-1-17 01:42
标题:
关于为什么不能用字符流复制MP3文件的问题
今天在看IO部分的视频,其中有说到复制MP3。视频上说图片等文件不能用字符流来复制,试了一下用字符流来复制MP3文件,复制出来的文件变小了,而且无法播放。出现这样的现象,我是否可以理解为在读数据的时候返回的是INT类型,但是写入的时候需要把INT类型的转为char类型,在转换过程中造成数据被丢失或者改变,所以最终复制的结果是MP3文件不能播放?
作者:
邓士林
时间:
2015-1-17 08:14
可能是由于字符流读取后,要对应码表,转换时候出错的。字节流直接读取单位是1个字节,而字符流是
2个字节的Unicode字符,
所以字符流是由Java虚拟机将字节转化为2个字节的Unicode字符为单位的字符而成的。
ps:
所有文件的储存是都是字节(byte)的储存,在磁盘上保留的并不是文件的字符而是先把字符编码成字节,再储存这些字节到磁盘。在读取文件(特别是文本文件)时,也是一个字节一个字节地读取以形成字节序列.
一般如果是音频文件就是用字节流,文本就是字符流
作者:
以利亚
时间:
2015-1-17 08:53
数据错乱了吧
作者:
wangcongwu
时间:
2015-1-17 10:48
你是逗我吗,你知道字符流其实也是字节流编译的吗,你一个图像的编码方式和一个字符的编码方式能一样吗。你没上过加算计理论的课吧
作者:
tony_ygz
时间:
2015-1-17 21:22
楼上这位好喷啊,回答问题都回答的愤世嫉俗
作者:
dwy_hm
时间:
2015-1-17 21:49
长度不匹配是转换时候出错
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2