Atitit.跨语言  文件夹与文件的io操作集合  草案

Atitit.跨语言  文件夹与文件的io操作集合  草案

 

1Jdk原生的太难用了。。1

2PS: apache commons-io包,FileUtils有相关的方法,IOUtils一般是拷贝文件。1

3Java raw3

4获取磁盘分区列表 驱动器列表4

5ref4

 

 

1. Jdk原生的太难用了。。

2. PS: apache commons-io包,FileUtils有相关的方法,IOUtils一般是拷贝文件。

删除目录结构                    FileUtils.deleteDirectory(dest);

递归复制目录及文件        FileUtils.copyDirectory(src, dest);

 

 

作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://www.cnblogs.com/attilax/

 

package aaaAddr;

 

import java.io.File;

import java.io.IOException;

 

import org.apache.commons.io.FileUtils;

 

public class copyDirTest {

 

public static void main(String[] argsthrows IOException {

// TODO Auto-generated method stub

FileUtils.copyDirectory(new File("c:\\00"), new File("c:\\00Copy"));

System.out.println("--f");

}

 

}

 

 

Detail use

 

1. /** 

2.  * 复制一个目录及其子目录、文件到另外一个目录 

3.  * @param src 

4.  * @param dest 

5.  * @throws IOException 

6.  */  

 

 

 

package aaaAddr;

 

import java.io.File;

import java.io.IOException;

import java.util.concurrent.Callable;

import java.util.concurrent.FutureTask;

 

import org.apache.commons.io.FileUtils;

 

import com.attilax.io.filex;

 

public class copyDirTest {

 

public static void main(String[] argsthrows IOException {

 

// TODO Auto-generated method stub

FutureTask<Object> task=new FutureTask<Object>(  new Callable () {

 

@Override

public Object call() throws Exception {

while(true)

{

String pathname = "c:\\11Copy"+filex.getUUidName();

System.out.println(pathname);

FileUtils.copyDirectory(new File("c:\\11"), new File(pathname));

System.out.println("--f");

try {

Thread.sleep(1000);

catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

//return null;

}

});

new Thread(task).start();

}

 

}

 

 

3. Java raw

7. private void copyFolder(File src, File dest) throws IOException {  

8.     if (src.isDirectory()) {  

9.         if (!dest.exists()) {  

10.             dest.mkdir();  

11.         }  

12.         String files[] = src.list();  

13.         for (String file : files) {  

14.             File srcFile = new File(src, file);  

15.             File destFile = new File(dest, file);  

16.             // 递归复制  

17.             copyFolder(srcFile, destFile);  

18.         }  

19.     } else {  

20.         InputStream in = new FileInputStream(src);  

21.         OutputStream out = new FileOutputStream(dest);  

22.   

23.         byte[] buffer = new byte[1024];  

24.   

25.         int length;  

26.           

27.         while ((length = in.read(buffer)) > 0) {  

28.             out.write(buffer, 0, length);  

29.         }  

30.         in.close();  

31.         out.close();  

32.     }  

33. }  

 

 

4. 获取磁盘分区列表 驱动器列表

 

/**

 * {

  "path": "C:\\"

}

{

  "path": "D:\\"

}

{

  "path": "E:\\"

}

{

  "path": "F:\\"

}

{

  "path": "Z:\\"

}

 

 * @param args

 */

public static void main(String[] args) {

//FileChangeObserver

   File[] roots = File.listRoots();// 获取磁盘分区列表  

    for (File file : roots) {  

    System.out.println(AtiJson.toJson(file));

    

    }

}

 

}

5. ref

java拷贝目录及其子目录、文件,到另外一个目录 一切为了程序 博客频道 - CSDN.NET.htm

posted @ 2016-03-08 16:21  attilaxAti  阅读(262)  评论(0编辑  收藏  举报