今天,用Java做点事情,出现了一个很莫名其妙的事情就是文件输出都只有24KB,后面的部分没有输出,看下面代码
for(Iterator items = set.iterator(); items.hasNext();){
BiDataItem item = (BiDataItem) items.next();
out2.write(item.toString()+"\n");
}
就是遍历set集合里面的元素,挨个输出,好像也没有错误,但是就是不对,后面我只有冷静分析了,并且找到了原因——还有未输出的部分还留着缓存区内,并且我们可以意外的发现Java默认缓存区的大小是24KB。虽然问题很简单,但是收获了不少,知道原因,显然解决方法就出来了,在最后加上“out2.flush()”搞定,哈哈,这算不算法善于思考的典型案例呢(鼓励下自己,嘻嘻)!