licweiwei

Java 写文件的4096缓冲字节


public static void copyFile(File sourceFile, File targetFile,Boolean preserveFileDate)
            
throws IOException {
        <!-- ........-->
        // 缓冲数组
        byte[] b = new byte[4096];
        
int len;
        
while ((len = inBuff.read(b)) != -1) {
            outBuff.write(b, 
0, len);
        }
     

        <!-- ........-->
    }

拿上面的代码为例,一直以来, 看别人用java写文件都是用4096字节的缓冲,之一在想为什么是4096呢, 网上查了一下资料,操作系统读写文件是以簇为原子操作的, 一般windows的NTFS系统的簇大小是4096,所以我想原因应该是既然底层IO操作一次是4096个字节那么缓冲多了也没意义,不会减少底层IO操作的次数。

这个想法有待考证。。。。。。



posted on 2009-05-31 15:19 licwei 阅读(672) 评论(0)  编辑  收藏 所属分类: Technology


只有注册用户登录后才能发表评论。


网站导航: