zoukankan      html  css  js  c++  java
  • JAVA通过I/O流复制文件

    JAVA通过I/O流复制文件

    本文是对字节流操作,可以多音频视频文件进行操作,亲测有效。

    个人感觉这个东西就是靠记的, 没什么好解释的,,,,

      

     1 import java.io.File;
     2 import java.io.FileInputStream;
     3 import java.io.FileNotFoundException;
     4 import java.io.FileOutputStream;
     5 import java.io.IOException;
     6 
     7 
     8 public class CopyMove {
     9 
    10     public static void main(String[] args){
    11         
    12         //时间
    13         long starttime = 0;
    14         long finishtime = 0;
    15         Calendar calendar = null;
    16      
    17     /*    String oldPath = "D:/test/gktgd.mp4";
    18         String newPath = "D:/test/new4.mp4";*/
    19         String oldPath = "D:/test/fff.flv";
    20         String newPath = "D:/test/ff.flv";
    21         
    22         File oldFile = new File(oldPath);
    23         File newFile = new File(newPath);
    24       
    25         //若文件不存在则创建
    26      if(!newFile.exists()){
    27             try {
    28                 newFile.createNewFile();
    29             } catch (IOException e) {
    30                 // TODO Auto-generated catch block
    31                 e.printStackTrace();
    32             }
    33         } 
    34         
    35         FileInputStream fIS = null;
    36         FileOutputStream fOS = null;
    37        
    38      //声明用于传递字节的byte 数组大小要是2的整数倍
    39         byte[] ttStream = new byte[4096];
    40         
    41         int len = 0;
    42         
    43         try {
    44             fIS = new FileInputStream(oldFile);
    45             fOS = new FileOutputStream(newFile);
    46              
    47         //获取开始时间       
    48             starttime = System.currentTimeMillis();
    49             
    50             System.out.println(starttime);
    51             len = fIS.read(ttStream);
    52        //若len为-1 证明读取完,若不为-1 则为读取的字节数 
    53             while((len)!=-1){
    54           //将读出的字节写入文件中
    55                 fOS.write(ttStream, 0, len);
    56            //再次读取 
    57                 len=fIS.read(ttStream);
    58             }
    59        //获得结束时间 
    60             finishtime = System.currentTimeMillis();
    61             System.out.println(finishtime);
    62             System.out.println("时间间隔为:" +(finishtime-starttime));
    63         } catch (FileNotFoundException e) {
    64             // TODO Auto-generated catch block
    65             e.printStackTrace();
    66         } catch (IOException e) {
    67             // TODO Auto-generated catch block
    68             e.printStackTrace();
    69         } finally {
    70             try {
    71          //按照先使用后关闭的原则关闭 
    72                 fOS.close();
    73                 fIS.close();
    74             } catch (IOException e) {
    75                 // TODO Auto-generated catch block
    76                 e.printStackTrace();
    77             }   
    78         }
    79      }
    80 }
  • 相关阅读:
    读书笔记之:高级Linux编程(ch14)
    读书笔记之:C++编程惯用法——高级程序员常用的方法和技巧
    读书笔记之:sed与awk
    读书笔记之:Linux——命令、编辑器与shell编程
    读书笔记之:C++必知必会
    读书笔记之:Linux程序设计(第4版)(ch17)
    读书笔记之:Linux管理员指南与Linux系统一本通
    读书笔记之:C++语言的设计与演化(2002)
    读书笔记之:Linux一站式学习
    读书笔记之:GNU/Linux编程指南
  • 原文地址:https://www.cnblogs.com/Mr-Dawei/p/7375778.html
Copyright © 2011-2022 走看看