博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java复制文件流,javaIO源之字节流的四种方式复制文件方式总结
阅读量:6455 次
发布时间:2019-06-23

本文共 2214 字,大约阅读时间需要 7 分钟。

javaIO流之字节流的四种方式复制文件方式总结

/*

* 需求:把e:\\a.mp4复制到当前项目目录下的copy.mp4中

*

* 字节流四种方式复制文件:

* 基本字节流一次读写一个字节: 共耗时:117235毫秒

* 基本字节流一次读写一个字节数组: 共耗时:156毫秒

* 高效字节流一次读写一个字节: 共耗时:1141毫秒

* 高效字节流一次读写一个字节数组: 共耗时:47毫秒

*/

package cn.itcast_06;

import java.io.BufferedInputStream;

import java.io.BufferedOutputStream;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

public class CopyMp4Demo {

public static void main(String[] args) throws IOException {

long start = System.currentTimeMillis();

// method1("e:\\a.mp4", "copy1.mp4");

// method2("e:\\a.mp4", "copy2.mp4");

// method3("e:\\a.mp4", "copy3.mp4");

method4("e:\\a.mp4", "copy4.mp4");

long end = System.currentTimeMillis();

System.out.println("共耗时:" + (end - start) + "毫秒");

}

// 高效字节流一次读写一个字节数组:

public static void method4(String srcString, String destString)

throws IOException {

BufferedInputStream bis = new BufferedInputStream(new FileInputStream(

srcString));

BufferedOutputStream bos = new BufferedOutputStream(

new FileOutputStream(destString));

byte[] bys = new byte[1024];

int len = 0;

while ((len = bis.read(bys)) != -1) {

bos.write(bys, 0, len);

}

bos.close();

bis.close();

}

// 高效字节流一次读写一个字节:

public static void method3(String srcString, String destString)

throws IOException {

BufferedInputStream bis = new BufferedInputStream(new FileInputStream(

srcString));

BufferedOutputStream bos = new BufferedOutputStream(

new FileOutputStream(destString));

int by = 0;

while ((by = bis.read()) != -1) {

bos.write(by);

}

bos.close();

bis.close();

}

// 基本字节流一次读写一个字节数组

public static void method2(String srcString, String destString)

throws IOException {

FileInputStream fis = new FileInputStream(srcString);

FileOutputStream fos = new FileOutputStream(destString);

byte[] bys = new byte[1024];

int len = 0;

while ((len = fis.read(bys)) != -1) {

fos.write(bys, 0, len);

}

fos.close();

fis.close();

}

// 基本字节流一次读写一个字节

public static void method1(String srcString, String destString)

throws IOException {

FileInputStream fis = new FileInputStream(srcString);

FileOutputStream fos = new FileOutputStream(destString);

int by = 0;

while ((by = fis.read()) != -1) {

fos.write(by);

}

fos.close();

fis.close();

}

}

版权声明:本文为博主原创文章,未经博主允许不得转载。

你可能感兴趣的文章
MySQL my.cnf参数配置优化详解
查看>>
HDU/HDOJ 2102 A计划 广度优先搜索BFS
查看>>
JavaNIO基础02-缓存区基础
查看>>
阿里 Blink 正式开源,重要优化点解读
查看>>
日本开设无人机专业,打造无人机“人才市场”
查看>>
Exchange 2013 EAC之管理员重置普通用户密码
查看>>
三线跑酷例子BlocksRun的技术点
查看>>
如何应对DDOS网络攻击
查看>>
新闻奖颁给了一个写稿机器人(来自新华社)
查看>>
Android应用程序在新的进程中启动新的Activity的方法和过程分析
查看>>
spring boot 拦截器
查看>>
数组和指针
查看>>
Python version 2.7 required, which was not found in the registry
查看>>
Oracle 学习之--ASM DISK Header的备份和恢复(1)
查看>>
Oracle Study之案例--Oracle ASSM管理方式下的BITMAP
查看>>
根据umask值,计算文件权限
查看>>
VLSM规划
查看>>
How to upgrade the ant built into eclipse?
查看>>
在线BASE64加密解密、UrlEncode编码/解码、native/ascii在线转换工具
查看>>
CentOS 6.3 安装 JDK
查看>>