黑马程序员技术交流社区

标题: 这两天刚好学到了IO流,有个问题想请教一下各位大神 [打印本页]

作者: crazymen    时间: 2016-6-21 23:44
标题: 这两天刚好学到了IO流,有个问题想请教一下各位大神
这两天在学习IO的Fileinputsrteam和FileOutputStream,于是动手写一个代码,用于文件复制,可以复制一个文件夹中的任何文件到一个指定的路径,复制用的是基本流,复制过程中出现了问题,
复制到某一个文件后,程序卡住不动了.以下是复制部分代码
//                int a=0;                                                                                                    
//                byte b[]=new byte[fis.available()];
//                while((a=fis.read(b))!=-1){
//                        fos.write(b);
//                }
//                fis.close();
//                fos.close();


求大神指教这是什么原因

作者: 159269236    时间: 2016-6-21 23:45
定义a不要定义a=0
作者: 何亚辉    时间: 2016-6-22 00:17
楼主是故意来骗人的吗? 程序并没有卡住, 不过楼主用的是大数组是一次就可以读完的, 完全没有必要加while循环
作者: 黑夜的灬黑    时间: 2016-6-22 00:42
不用while循环的.
作者: 请叫我南审    时间: 2016-6-22 00:46
不用while的把?
作者: 守徒徒    时间: 2016-6-22 11:23
如果byte数组大小是fis.available()的话,就不需要while了
作者: wby127889561    时间: 2016-6-22 13:01
理解每一个步骤再用
作者: crazymen    时间: 2016-6-22 22:58
何亚辉 发表于 2016-6-22 00:17
楼主是故意来骗人的吗? 程序并没有卡住, 不过楼主用的是大数组是一次就可以读完的, 完全没有必要加while循 ...

你去试一下就知道了,我这循环确实不该有,但是我并没有骗人




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2