首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

java如何把本map片以最快的速度读入inputstream里面

2012-09-06 
java怎么把本地图片以最快的速度读入inputstream里面?不用输出保存,只读入流中即可,怎么把图片快速读入输

java怎么把本地图片以最快的速度读入inputstream里面?
不用输出保存,只读入流中即可,怎么把图片快速读入输入流啊。

[解决办法]

Java code
        BufferedInputStream in = new BufferedInputStream(new FileInputStream(f));        try        {            byte[] buffer = new byte[4096];            int len = -1;            while((len = in.read(buffer)) != -1)            {                //TODO            }        }        finally        {            in.close();            in = null;        }
[解决办法]
4096只是各种书上的推荐值. 
其实每一次只搬4096(4k)对于现在的机器配置以及JDK1.3以上来说有些小气了。这样会因为while而消耗CPU时间.
如果文件不超过512K, 直接拿文件的length()做buffer的大小
如果超过了,最好用512K的倍数,映像中java的堆是按这个数分配的.
----
早在win2k时代 10M以下文件在MSDOS复制时的默认缓存就已经是32K

热点排行