FileOutputStream fos = new FileOutputStream("1234.txt");
byte[] buf = new byte[1024];
int len = 0;
while((len=sis.read(buf))!=-1){//这个代码是相当于将读到的元素传入到数组中吗?以及这个while方法里面的Write写入给的三个参数,应该怎么理解呢?谢过各位帮忙!!!!
fos.write(buf,0,len);
}
fos.close();
}
}
//len=sis.read(buf)
//将读取到的字节存储在缓冲的字节数组中,这样可以提高效率,
//但是他返回的是读取到的数组个数,如果独到系统平台定义的标记,那么他就不读了,返回读取的个数
//下次读取时,直接返回读取的标记,为了与字符加以区别,用-1表示,因为char用int行表示是0-2635...
//就是2的16次方,如果返回0的话,表示读取到有字符,所以用-1表示。
//fos.write(buf,0,len);
//这样好像不对吧
//应该是 fos.write(new String(buf,0,len));
//其实它调用了String的一个构造函数方法,创建一个对象,你可以查询API
//然后默认的toString()打印出来了,
//o了
|