一个关于java中流的问题。谢谢指教。
有两个代码。
第一个代码中:为什么11行中len = bis.read(buf)可以加多个buf呢?api没有找到这样的方法。
第二个代码中:为什么13行此时的却不能配合着7行在13行后加多个buf(即12行代码)。
import java.io.*;
public class TestInputStreamOutputStreamCopy_3{
	public static void main(String[] args) throws Exception{
		BufferedInputStream bis = new BufferedInputStream( new FileInputStream("E:\\IBM教学\\java\\lesson_io\\妹妹来看我.mp3"));			
		BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("d:/zhangsan.haha"));
		byte[] buf = new byte[1024];
		int len;		
		len = bis.read(buf);//11行。
		while (-1 != len){
			bos.write(buf, 0, len);//ok
			len = bis.read(buf);
		}		
		bos.flush();		
		bos.close();
		bis.close();
	}
}
第二段代码:
import java.io.*;
public class Z{
	public static void main(String[] args) throws Exception{
		FileReader fr = new FileReader("D:\\programme\\Java\\自己敲的源代码\\Z.java");
		//byte[] buf = new byte[1024];//7行。	
		int ch;
		int cnt = 0;		
		//ch = fr.read(buf);//12行
                   ch = fr.read();//13行
		while (-1 != ch){
			++cnt;
			System.out.printf("%c", (char)ch);
			ch = fr.read(buf);
		}
		System.out.printf("该文件字符的个数是:%d\n", cnt);
		fr.close();
	}
}
------解决方案--------------------不错 找到错误就是进步嘛
------解决方案--------------------最近我也遇到了IO流的问题,顺便再此围观下。