Java中复制文件的效率测试
2023-09-11 14:20:34 时间
项目中用到了图片的上传,对于上传过程中,图片的复制项目组用了两种方法,一种是以java的IO流,另外一种是用org.apache.commons.io.FileUtils的工具类,今天我测试了一下,单纯考虑文件的复制效率,apache的工具类的效率是普通io流读取的3倍。
下面是测试源码:
public class ImageTest { public static void main(String[] args) throws IOException { IOTest(); public static void fileUtilsTest() throws IOException { // 趋近13毫秒后,就保持这个数值 File srcFile = new File("D:/1.apk"); File destFile = new File("E:/2.apk"); long sum = 0; for (int i = 0; i i++) { long startTime = System.currentTimeMillis(); FileUtils.copyFile(srcFile, destFile); long endTime = System.currentTimeMillis(); sum += (endTime - startTime); long average = sum / 10; System.out.println("耗时" + average + "豪秒"); public static void IOTest() throws IOException { // 50毫秒 File srcFile = new File("D:/1.apk"); File destFile = new File("E:/2.apk"); long sum = 0; for (int i = 0; i i++) { long startTime = System.currentTimeMillis(); InputStream is = new FileInputStream(srcFile); // 把图片写入到上面设置的路径里 OutputStream os = new FileOutputStream(destFile); byte[] buffer = new byte[400]; int length = 0; while ((length = is.read(buffer)) 0) { os.write(buffer, 0, length); is.close(); os.close(); long endTime = System.currentTimeMillis(); sum += (endTime - startTime); long average = sum / 10; System.out.println("耗时" + average + "豪秒");
最新内容请见作者的GitHub页:http://qaseven.github.io/
【Java 微信公众号开发】① 介绍、测试号、接入 微信公众号是开发者或商家在微信公众平台上申请的应用账号。该帐号与 QQ 账号互通,平台上实现和特定群体的文字、图片、语音、视频的全方位沟通、互动 ,形成了一种主流的线上线下微信互动营销方式。 微信公众号是用户在微信公众平台注册的一个账号。账号开通后,可在微信公众号里发视频、图片、文字等推销你的商品或分享生活经验等。 微信公众号类似于一个网站。可作为公司名片、个人名片,可做成商城、互动社区等。管理员可通过微信公众平台发送文章,关注了微信公众号的用户可查看到管理员发送的文章。
相关文章
- 安卓逆向_17 --- IDA 动态调试【 环境搭建、so库调试【动态普通、动态debug模式】、JNI_OnLoad调试分析、java_ 开头函数分析】
- Java语言基本语法
- 回归JAVA: java文件编译后,出现xx$1.class的原因
- Java反编译生成java文件
- java创建文件,并向文件中写入字符串,读取字符串到屏幕
- Java网络教程-基础
- Java Invoked OOM-Killer - OOM不一定是来自于java heap
- 从命令行编译、运行、打包java文件
- Java面试集合(七)
- java操作属性文件工具类
- java 排序多个条件
- java anchor 发现
- 解决java中按照数字大小来排序文件
- Java中toArray的用法探究(java数组与list转换)
- Java 设计模式之装饰模式,Java 装饰模式,java装饰模式和代理模式的区别
- SpringCloud OpenFeign使用和配置,Java OpenFeign 使用教程
- 【XML和Java】Java程序+SAX对XML的解析输出
- Java线程锁,synchronized、wait、notify详解--java 管程
- Java学习-017-EXCEL 文件读取实例源代码
- Java打印输出:java天龙八部私服
- web工程中java类获取webapp路径下的文件
- 用java解析在OpenStreetMap上下载的地图数据(SAX版,适合比较大的xml文件)
- Java的面向AOP编程
- java中接口的定义与实现
- java基础—第四章、数组
- base64文件上传 java.io.FileNotFoundException 拒绝访问
- 【JAVA】Eclipse保存时出现“Save could not be completed”问题
- Java文件操作 File 类(创建文件、删除、创建目录,查询文件信息)
- Java操作文件Util
- Java读取文件
- java下载文件
- 【Java I/O 流】文件的操作——java.io.File 类详解
- Java NIO——与传统IO文件复制的效率比较(channel.transferTo、Files.copy 、channel.write)