最赞回答 / 114孢
while没错 对象.read(byte[] b, int off, int len);//方法是这样的:从对象中读取len个字节放进b中,每次从b中off位置开始放,.但是老师对于这块有一个问题没讲清,我的理解是:文件指针从0开始读取,每次读取,指针后移一次,读取完一组字节,此时指针已经移动到了下一个未读取的位置,下次while循环时,从指针的位置继续读取,往放入b中 从b的off位置又开始放,知道放满,每次循环。当read方法读取到结尾时,返回值为-1,bytes接受该返回值,作为循环结束条件。(...
2017-02-04
最新回答 / NPC2049
贴代码上来。。你的问题应该是IO流中的用读写类拷贝文件的操作。问题原因应该是粗心。。可能是:要拷贝的源文件路径写成了要拷贝到的路径如: 源文件: F:/a.txt 拷贝到: F:/b.txt你写成了: 源文件: F:/b.txt 拷贝到: F:/b.txt或者是:要拷贝的源文件路径写成了源文件路径如: 源文件: F:/a.txt 拷贝到: F:/b.txt写成了: 源文件: F:/a.txt 拷贝到: F:/a.txt从头仔细查看...
2017-01-24
最赞回答 / wendy4165364
files!=null,应该是说files这个list数组必须存在,files.length>0:说明files这个数组不能是空数组,至少要有一个元素在数组里面
2017-01-21
最新回答 / DingBad
能存。list 添加的是 Object类型。但byte是基本数据类型。按理说是不能存的,但是java有自动装箱拆箱功能。你直接添加的时候是byte b = 'a';List list = new ArrayList();list.add(b);java会自动将 b 装箱成 Byte,然后存储。Byte是byte的封装类。然后你取出的时候byte bb = (Byte)list.get(0);就行了。java会自动将 取出来的Byte自动拆箱成 byte。
2017-01-16
已采纳回答 / 慕粉3549847
老师的这句话没毛病,只是说分情况而言! 1个汉字 = 1个字 = 1个字符 1个字符 = 1个字节 = 8bit(ACSII码下) 1个字符 = 2个字节 = 16bit(Unicode码下)
2017-01-13
已采纳回答 / KeT
这个while循环就是为了读取完要读取的东西。同时也像你说的为了防止它为空。而且,按照正常情况,buf是字节数组,应该是1024字节的倍数吧,有时候一次读不完,所以用个while循环来判定。望采纳,谢谢。
2017-01-09
已采纳回答 / Jathy
在Windows中后缀名,比如.dat .wmv .mp3.通过后缀名来区分不同的文件类型,进而让计算机知道用什么软件来打开,但对于读取文件因为都是byte的内容,不需要任何软件进行识别,只是简单读取,所以以什么后缀名结尾其实没那么重要,哪怕是 .zhebushihouzuiming 也可进行读取。以上只是个人观点,如有错误希望指正! ^.^
2017-01-09
已采纳回答 / 2012还是1984
都是IO包下的类,如果这个没有,那么其他的也会没有。你看看是不是没有导入包:import java.io.ObjectInputStream;
2017-01-09
已采纳回答 / 慕粉4143473
原因:显示红色感叹号是因为jar包的路径不对解决:在项目上右击Build Path -> Configure Build Paht...(或Propertise->Java Build Path),在JavaBuild Path中Libraries,红色叉号的包为路径错误的包。处理好后返回刷新工程即可,这个问题一般是导入别人的项目或之前的一些JAR包移动了它的存储位置。
2017-01-08
已采纳回答 / 我是菁粉
老师讲解时,都是实例化子类对象的,因为子类对象已经实例化过的,所以不会报错,如果此时直接对没有序列化的父类对象进行对象的文件存储与读取操作、网络传输时均会报错的。
2017-01-07