日期:2014-05-19  浏览次数:20643 次

java的输入输出流????
代码如下:

FileInputStream f= new FileInputStream("E:\\文档\\青鸟2.txt");
FileOutputStream o=new FileOutputStream("E:\\文档\\青鸟3.txt");
byte [] c=new byte[24];
int data=0;

while((data=f.read(c))!=-1){
        o.write(c);
}


原文件的内容还是   abc2435dfdfds北大青鸟南京中博
输出后的内容是     abc2435dfdfds北大青鸟南京中博35dfdfds北大青鸟南?

为什么和原文件不一样呢???把24改成其他的数字后输出的内容又不同了,只有是1或者一个很大的数字
输出的内容才合原文件一样
java io

------解决方案--------------------
第二次循环没有填满c,于是第二次循环输出的内容包含第二次读取的内容和第一次读取的后半部分内容。