欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java文件操作工具類實現(xiàn)復制文件和文件合并

 更新時間:2014年03月02日 09:07:52   作者:  
這篇文章主要介紹了java文件操作工具類,類實現(xiàn)了復制文件和文件合并的功能,需要的朋友可以參考下

兩個方法:
1、復制一個目錄下面的所有文件和文件夾
2、將一個文件目錄下面的所有文本文件合并到同一個文件中

復制代碼 代碼如下:

package com.firewolf.test;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class FileReaderUtil {
 public static void main(String[] args){
  try {
   //mergeFile(new File("C:/Documents and Settings/liuxing0/桌面/新建文件夾/script"), new File("D:/all.sql"));
   copyFiles(new File("G:/學習資料/筆記"),new File("G:/Test"));
  } catch (IOException e) {
   e.printStackTrace();
  }
 }

 /**
  * 拷貝某個文件目錄下面的所有文件,
  * @param sourcePath 原文件目錄
  * @param desPath 目的文件目錄
  */
 private static void copyFiles(File sourceFile,File desFile) throws IOException{
  if(sourceFile.isFile()){
   File file = new File(desFile.getPath()+"/"+sourceFile.getName());
   FileInputStream fis = new FileInputStream(sourceFile);
   FileOutputStream fos = new FileOutputStream(file);
   int len = 0;
   byte[] buf = new byte[1024];
   while((len = fis.read(buf)) != -1)
    fos.write(buf,0,len);
  }else{
   File dir = new File(desFile.getPath()+"/"+sourceFile.getName());
   if(!dir.exists())
    dir.mkdir();
   String[] names = sourceFile.list();
   for (int i = 0; i < names.length; i++) {
    copyFiles(new File(sourceFile.getPath()+"/"+names[i]),dir);
   }
  }
 }

 /**
  * 將一個文件目錄下面的所有文件獨到一個文件中的方法(主要用于將很多文本文件合并到一起)
  * @param sourceFile
  * @param decFile
  * @return
  * @throws IOException
  */
 private static File mergeFile(File sourceFile,File decFile) throws IOException{
  String[] fileList = sourceFile.list();
  for (String string : fileList) {
   File file = new File(sourceFile.getPath()+"/"+string);
   if(!file.isDirectory()){

    FileInputStream fis = new FileInputStream(file);
    FileOutputStream fos = new FileOutputStream(decFile, true);
    byte[] buffer = new byte[1024];
    int len = 0;
    while((len= fis.read(buffer)) != -1)
     fos.write(buffer, 0, len);
   }
   else {
    decFile = mergeFile(file,decFile);
   }
  }
  return decFile;
 }
}

相關文章

  • mybatis修改int型數(shù)據(jù)無法修改成0的解決

    mybatis修改int型數(shù)據(jù)無法修改成0的解決

    這篇文章主要介紹了mybatis修改int型數(shù)據(jù)無法修改成0的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Java String 字符串常量池解析

    Java String 字符串常量池解析

    這篇文章主要介紹了Java String 字符串常量池解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-08-08
  • Mybatis使用大于等于或小于等于進行比較

    Mybatis使用大于等于或小于等于進行比較

    本文主要介紹了Mybatis使用大于等于或小于等于進行比較,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-03-03
  • Java中Stringbuilder和正則表達式示例詳解

    Java中Stringbuilder和正則表達式示例詳解

    Java語言為字符串連接運算符(+)提供特殊支持,并為其他對象轉(zhuǎn)換為字符串,字符串連接是通過StringBuilder(或StringBuffer)類及其append方法實現(xiàn)的,這篇文章主要給大家介紹了關于Java中Stringbuilder和正則表達式的相關資料,需要的朋友可以參考下
    2024-02-02
  • Java基于zxing生成二維碼矩陣過程解析

    Java基于zxing生成二維碼矩陣過程解析

    這篇文章主要介紹了Java基于zxing生成二維碼矩陣過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-09-09
  • SpringBoot中使用com.alibaba.druid.filter.config.ConfigTools對數(shù)據(jù)庫密碼加密的方法

    SpringBoot中使用com.alibaba.druid.filter.config.ConfigTools對數(shù)據(jù)庫

    這篇文章主要介紹了SpringBoot中使用com.alibaba.druid.filter.config.ConfigTools對數(shù)據(jù)庫密碼加密的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • Idea中springboot項目的熱部署無法生效問題解決

    Idea中springboot項目的熱部署無法生效問題解決

    本文主要介紹了Idea中springboot項目的熱部署無法生效問題解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-10-10
  • 一篇文章教你使用枚舉來實現(xiàn)java單例模式

    一篇文章教你使用枚舉來實現(xiàn)java單例模式

    本篇文章主要介紹了Java實現(xiàn)單例的3種普遍的模式,餓漢式、懶漢式、枚舉式。具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能給你帶來幫助
    2021-07-07
  • idea2019導入maven項目中的某些問題及解決方法

    idea2019導入maven項目中的某些問題及解決方法

    這篇文章主要介紹了idea2019導入maven項目中的某些問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • Java8函數(shù)式接口Predicate用法示例詳解

    Java8函數(shù)式接口Predicate用法示例詳解

    這篇文章主要為大家介紹了Java8函數(shù)式接口Predicate用法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07

最新評論