java二进制文件复制
package com.starain.io;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class ByteReadAndWrite {
public static void main(String[] args) throws IOException {
/*普通二进制读写完成copy文件方法,效率低*/
File filePathName1 = new File("D:/1.txt");
File filePathName2 = new File("e:/1.txt");
try {
FileInputStream file1 = new FileInputStream(filePathName1);
FileOutputStream file2 = new FileOutputStream(filePathName2);
byte put[] = new byte[12];
int count1 = 0;
while(file1.read(put)!=-1){
file2.write(put);
count1++;
}
System.out.println("读取"+count1+"次");
file1.close();
file2.close();
} catch (Exception e) {
System.out.println("error");
}
/*Buffered方法读写copy大文件*/
File filePathName3 = new File("E:/豆电雨/Struts2_值栈.wmv");
File filePathName4 = new File("f:\\Struts2_值栈.wmv");
try {
FileInputStream file3 = new FileInputStream(filePathName3);
FileOutputStream file4 = new FileOutputStream(filePathName4);
BufferedInputStream bufferedFile1 = new BufferedInputStream(file3,1000000);//硬盘进制为1000,改变缓冲大小达到节省时间,优化读写的目的
BufferedOutputStream bufferedFile2 = new BufferedOutputStream(file4,1000000 );
byte []put2 = new byte[100000];
int count2 = 0;
long longTime1 = System.currentTimeMillis();
while(bufferedFile1.read(put2)!=-1){
bufferedFile2.write(put2);
count2++;
}
long longTime2 = System.currentTimeMillis();
System.out.println("用时:"+(longTime2 - longTime1)+"ms");
System.out.println("用"+count2+"次");
/*一定养成好的习惯,防止内存泄漏
*先创建的后关闭
*后创建的先关闭
*/
bufferedFile1.close();
bufferedFile2.close();
file3.close();
file4.close();
} catch (FileNotFoundException e) {
System.out.println("error2");
}
}
}
java二进制文件复制的更多相关文章
- IO复制多级目录 控制台输入文件目录然后把目录下java文件复制到 D: 并统计java个数
package cn.itcast_05; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; impor ...
- Java 深复制和浅复制
浅复制是指复制对象时仅仅复制对象本身(包括对象中的基本变量),而不复制对象包含的引用指向的对象.深复制不仅复制对象本身,而且复制对象包含的引用指向的对象. 复制对象时需要调用Object类的clone ...
- Java字符串复制
Java字符串复制 public boolean topicFilterMatch(String topicFilter, String topic) { if (topicFilter == nul ...
- java基础 File 递归删除文件夹中所有文件文件夹 目录(包含子目录)下的.java文件复制到e:/abc文件夹中, 并统计java文件的个数
File 递归删除文件夹中所有文件文件夹 package com.swift.kuozhan; import java.io.File; import java.util.Scanner; /*键盘录 ...
- Java算法面试题:编写一个程序,将e:\neck目录下的所有.java文件复制到e:\jpg目录下,并将原来文件的扩展名从.java改为.jpg
package com.swift; import java.io.File; import java.io.FileFilter; import java.io.FileInputStream; i ...
- Java基础面试操作题: File IO 文件过滤器FileFilter 练习 把一个文件夹下的.java文件复制到另一个文件夹下的.txt文件
package com.swift; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File ...
- MySQL 主从复制:基于二进制文件复制配置详解
MySQL-主从复制:基于二进制文件复制详解 前言 主从复制是指把一个MySQL的数据库服务器作为主服务器(master),然后把master的数据复制到一个或者多个MySQL数据库服务器作为从服务器 ...
- JAVA实现复制文件夹
package com.filetest; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; impor ...
- java基础-复制
package hanqi.test; import java.io.FileInputStream; import java.io.FileOutputStream; public class Te ...
随机推荐
- oracle 自治事物 -- autonomous transaction
一 使用规则 : 在begin 之前申明 : PRAGMA AUTONOMOUS_TRANSACTION; 二 使用理解:autonomous transaction 是一个独立的事务,这一点是理解 ...
- public static <T> Map<String, T> json2map
/** * json string convert to map with javaBean */ public static <T> Map<String, T> json2 ...
- .NET获取机器信息
/// <summary> /// using System.Web; /// using System.Management; /// </summary> public s ...
- SQL利用临时表实现动态列、动态添加列
--方法一--------------------------------------------------------------------- declare @sql as varchar(1 ...
- JavaScript--对象-检查一个对象是否是数组
<!doctype html> <html> <head> <meta charset="UTF-8"> <title> ...
- [转载]__type_traits
在STL中为了提供通用的操作而又不损失效率,我们用到了一种特殊的技巧,叫traits编程技巧.具体的来说,traits就是 通过定义一些结构体或类,并利用模板类特化和偏特化的能力,给类型赋予一些特性, ...
- 疯狂学习java web4(jsp)
JSP与PHP.ASP.ASP.NET等语言类似,运行在服务端的语言. JSP(全称Java Server Pages)是由Sun Microsystems公司倡导和许多公司参与共同创建的一种使软件开 ...
- Qt远程机开发时光标注意问题
最近项目中有一个比较奇怪的问题,就是当记录了最后的m_lastPos为当前widget中间位置之后,设置了QCursor也为当前中间位置. 这个时候当开始移动的时候,发现offset出现了很怪的极大值 ...
- canvas新属性
lineCap默认值是butt,还有aquare,round 使用:context.lineCap="butt" lineJoin miter是默认 还可以是round,bevel ...
- a便签 rel属性改变链接打开页面的方式
<body> XHTML: <a href="http://www.baidu.com" rel="external">Baidu &l ...