本帖最后由 yan5108652 于 2013-5-28 16:58 编辑
import java.io.*;
class FileWriterDemo
{
publicstatic void main(String args[]) throws IOException
{
char[] cha=new char[10*1024]; //10k的字符数组
for(intx=0;x<cha.length;x++) //向数组中写入字符
{
cha[x]='a';
}
Strings=new String(cha); //将10k的字符数组转成字符串
//调用
FileWriter fw=new FileWriter("demo.txt");
fw.write(s); //向流中写入字符串s
}
}
注意这里没有使用flush(),或者close()方法,即没有任何清空动作。
编译执行后发现 demo.txt 文件中写入了8k的数据
加入flush() 执行清空动作后,demo.txt中写入的是10k的数据。
疑问:8K是内存默认分配的缓冲区大小么,内存是怎么指定该大小的呢?
|