A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始


       参看下面的有关read()方法的解释,fis.read()每次读取的只是一个字节啊,那么把字节数组怎么设置为8K字节呢?ps.write(),又写入了多长呢?
      不是太明白,请大牛指教,,,,
  1. FileInputStream fis = new FileInputStream(file);
  2.         byte arr[] = new byte[8192];    //高效传输,8KB
  3.         
  4.         while(fis.read() != -1){
  5.             ps.write(arr, 0, fis.read());
  6.         }
复制代码


[size=-1] int
read()
          从此输入流中读取一个数据字节。
[size=-1] int
read(byte[] b)
          从此输入流中将最多 b.length 个字节的数据读入一个 byte 数组中。

14 个回复

倒序浏览
你这代码输出过吗?每个参数都去好好看看吧。你只要根据老师视频好好看,就不会有这些问题了。
回复 使用道具 举报
你这么写read 当相遇读取了两次把!!!!
ps.write() 如果不指定写入长度的话 就会把数据中所有的内容写入! 包括空白的那些
回复 使用道具 举报
Ake丶 发表于 2016-7-11 19:11
你这代码输出过吗?每个参数都去好好看看吧。你只要根据老师视频好好看,就不会有这些问题了。 ...

哦哦,好的,谢谢啦。在做一个试题,编的时间有点儿长了,头都有点儿大,,,
谢谢指点{:3_57:}
回复 使用道具 举报
ylca 发表于 2016-7-11 19:21
你这么写read 当相遇读取了两次把!!!!
ps.write() 如果不指定写入长度的话 就会把数据中所有的内容写入! 包 ...

嗯嗯,谢谢指点,{:3_56:}
我在好好研究,刚才逻辑短路了,,,,
回复 使用道具 举报
学习!学习!学习!学习!
回复 使用道具 举报
ImKing 中级黑马 2016-7-11 20:04:53
7#
yabiaodou 发表于 2016-7-11 19:56
学习!学习!学习!学习!

嗯嗯,加油{:2_36:}
回复 使用道具 举报
ylca 中级黑马 2016-7-11 20:12:31
8#
ImKing 发表于 2016-7-11 19:29
嗯嗯,谢谢指点,
我在好好研究,刚才逻辑短路了,,,,

你报名了吗
回复 使用道具 举报
ImKing 中级黑马 2016-7-11 20:17:47
9#

报名了啊,,,怎么了???一直在走流程呢 {:3_57:}
回复 使用道具 举报

是不是感觉我特别菜,,,,
回复 使用道具 举报
ylca 中级黑马 2016-7-11 20:33:43
11#
ImKing 发表于 2016-7-11 20:21
是不是感觉我特别菜,,,,

没有 问一下 你是报了哪里的校区 基础还是什么
回复 使用道具 举报
ylca 发表于 2016-7-11 20:33
没有 问一下 你是报了哪里的校区 基础还是什么

报了北京的校区(帝都),就业班(大三学生,实际上是大四了,,,)
回复 使用道具 举报
ylca 中级黑马 2016-7-11 21:53:14
13#
ImKing 发表于 2016-7-11 21:09
报了北京的校区(帝都),就业班(大三学生,实际上是大四了,,,)

{:2_30:} 我也是报了就业!!! 留个扣扣以后交流交流
回复 使用道具 举报
FileInputStream fis = new FileInputStream(file);
FileOutputStream fos=new FileOutputStream(File)
        byte arr[] = new byte[8192];    //高效传输,8KB
        int len;
        while((len=fis.read(arr)) != -1){
            ps.write(arr, 0, len);
        }
fis.close();
fos.close();


稍微修改了一下,读取字节数组的标准格式
回复 使用道具 举报
syinys7 发表于 2016-7-11 22:23
FileInputStream fis = new FileInputStream(file);
FileOutputStream fos=new FileOutputStream(File)
    ...

嗯呢,很棒,辛苦啦!
由于少加了一个数组名,这个错误我改了近几个小时,,,眼都花了
不过你也不错哦!!! 加油
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马