java之 ------ 文件拷贝
- import java.io.FileInputStream;
- import java.io.FileNotFoundException;
- import java.io.FileOutputStream;
- import java.io.IOException;
- public class FileCopyStream {
- public static void main(String[] args) {
- //fileCopy0("b.dat","d:/ex/a/","d:/ex/b/");
- //fileCopy1("b.dat","d:/ex/a/","d:/ex/b/");
- //fileCopy2("b.dat","d:/ex/a/","d:/ex/b/");
- fileCopy2("1.mp3","d:/ex/a/","d:/ex/b/");
- //fileCopy3("c.mp3","d:/ex/a/","d:/ex/b/");
- //fileCopy3("d.txt","d:/ex/a/","d:/ex/b/");
- }
- private static void fileCopy0(String fileName, String dir1,String dir2){
- try {
- FileInputStream in = new FileInputStream(dir1+fileName);
- FileOutputStream out = new FileOutputStream(dir2+fileName);
- byte[] buffer = new byte[512];
- in.read(buffer);
- out.write(buffer);
- } catch (FileNotFoundException e) {
- e.printStackTrace();
- } catch (Exception e) {
- }
- }
- //学习关流
- private static void fileCopy1(String fileName, String dir1,String dir2){
- FileInputStream in = null;
- FileOutputStream out = null;
- try {
- in = new FileInputStream(dir1+fileName);
- out = new FileOutputStream(dir2+fileName);
- byte[] buffer = new byte[512];
- in.read(buffer);
- out.write(buffer);
- } catch (FileNotFoundException e) {
- e.printStackTrace();
- } catch (Exception e) {
- }finally{
- try {
- in.close();
- out.close();
- } catch (IOException e) {
- throw new RuntimeException("文件无法关闭");
- }
- }
- }
- //可以拷贝大文件
- private static void fileCopy2(String fileName, String dir1,String dir2){
- FileInputStream in = null;
- FileOutputStream out = null;
- try {
- in = new FileInputStream(dir1+fileName);
- out = new FileOutputStream(dir2+fileName);
- byte[] buffer = new byte[512];
- int num = 0;
- do{
- num = in.read(buffer);
- out.write(buffer,0,num);
- }while(num>=0);
- } catch (FileNotFoundException e) {
- e.printStackTrace();
- } catch (Exception e) {
- e.printStackTrace();
- }finally{
- try {
- in.close();
- out.close();
- } catch (IOException e) {
- throw new RuntimeException("文件无法关闭");
- }
- }
- }
- //可以拷贝大文件
- private static void fileCopy3(String fileName, String dir1,String dir2){
- FileInputStream in = null;
- FileOutputStream out = null;
- try {
- in = new FileInputStream(dir1+fileName);
- out = new FileOutputStream(dir2+fileName);
- byte[] buffer = new byte[512];
- int num=0;
- while(in.available()>0){
- num = in.read(buffer);
- //最简单的加密
- for(int i=0;i<num;i++){
- buffer[i] = (byte)(buffer[i]+1);
- }
- out.write(buffer,0,num);
- }
- } catch (FileNotFoundException e) {
- e.printStackTrace();
- } catch (Exception e) {
- }finally{
- try {
- in.close();
- out.close();
- } catch (IOException e) {
- throw new RuntimeException("文件无法关闭");
- }
- }
- }
- }
java之 ------ 文件拷贝的更多相关文章
- Java实现文件拷贝的4种方法.
原文地址:http://blog.csdn.net/ta8210/article/details/2073817 使用 java 进行文件拷贝 相信很多人都会用,,不过效率上是否最好呢? 最近看了看N ...
- java对文件拷贝的简单操作
package fileInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNot ...
- 总结java中文件拷贝剪切的5种方式-JAVA IO基础总结第五篇
本文是Java IO总结系列篇的第5篇,前篇的访问地址如下: 总结java中创建并写文件的5种方式-JAVA IO基础总结第一篇 总结java从文件中读取数据的6种方法-JAVA IO基础总结第二篇 ...
- java Servlet文件拷贝的模板代码
//通过response对象获得一个输出流对象 ServletOutputStream os = response.getOutputStream(); //获得要拷贝文件的绝对路径 String r ...
- Java学习-045-目录中文件拷贝
挺晚的了,直接上码.敬请各位小主参阅,若有不足之处,敬请指正,非常感谢! 目录文件拷贝源码: /** * <strong>目录拷贝</strong><br> * & ...
- Java IO和Java NIO在文件拷贝上的性能差异分析
1. 在JAVA传统的IO系统中,读取磁盘文件数据的过程如下: 以FileInputStream类为例,该类有一个read(byte b[])方法,byte b[]是我们要存储读取到用户空间的缓冲区 ...
- (java)从零开始之--异常处理(以文件拷贝为例)
开发过程中避免不了对异常的处理,但是异常的处理又不能乱throw 下面是简单的抛异常处理 public static void CopyFile(String souFile,String dirFi ...
- Java基础IO文件拷贝练习题
/** * 编写一个程序,把指定目录下的所有的带.java文件都拷贝到另一个目录中,拷贝成功后,把后缀名是.java的改成.txt. */ 1.我们看到这个题还是用大化小的思想来做 分析:1.拷贝 & ...
- Java IO和Java NIO 和通道 在文件拷贝上的性能差异分析
1. 在JAVA传统的IO系统中,读取磁盘文件数据的过程如下: 以FileInputStream类为例,该类有一个read(byte b[])方法,byte b[]是我们要存储读取到用户空间的缓冲区 ...
随机推荐
- 小白学习安全测试(一)——Http协议基础
Http协议基础 Web技术发展[http://www.cnblogs.com/ProgrammerGE/articles/1824657.html] 静态WEB[网页] 动态WEB 属于一种应用程序 ...
- asp.net后台获取前台页面大小
前台代码如下:<input type="hidden" runat="server" value="0" id="txBod ...
- Java编程的逻辑 (37) - 泛型 (下) - 细节和局限性
本系列文章经补充和完善,已修订整理成书<Java编程的逻辑>,由机械工业出版社华章分社出版,于2018年1月上市热销,读者好评如潮!各大网店和书店有售,欢迎购买,京东自营链接:http:/ ...
- 切换Intellij ieda 调试为Visual Studio风格
- Nwjs开发桌面应用
使用Nwjs开发桌面应用体验 https://www.cnblogs.com/zhupengfei/p/8906131.html 之前一直用.net开发桌面应用,最近由于公司需要转为nodejs,但也 ...
- 【AtCoder】ARC089
C - Traveling 先看能不能走到,再看看奇偶性是否相同 #include <bits/stdc++.h> #define fi first #define se second # ...
- JDBC事务与事务隔离级别详解
事务基本概念 一组要么同时执行成功,要么同时执行失败的SQL语句.是数据库操作的一个执行单元. 事务开始于: 连接到数据库上,并执行一条DML语句insert.update或delete 前一个事务结 ...
- Storm介绍及核心组件和编程模型
离线计算 离线计算:批量获取数据.批量传输数据.周期性批量计算数据.数据展示 代表技术:Sqoop批量导入数据.HDFS批量存储数据.MapReduce批量计算数据.Hive批量计算数据.azkaba ...
- HTML5 标签语法变化和使用概念
1.H5与H4的区别 概念的变化: H5更注重内容与结构,不再只专注于表现. 声明与标签: 新的声明背简化: <!DOCTYPE html> <meta charset=utf-8& ...
- oracle数据库连接错误解决办法
ORA-28547 连接服务器失败,可能是Oracle Net 管理错误 原文地址:http://www.linuxidc.com/Linux/2014-11/109686.htm 上周去给客户培训O ...