Atitit.跨语言 文件夹与文件的io操作集合 草案
Atitit.跨语言 文件夹与文件的io操作集合 草案
2. PS: apache commons-io包,FileUtils有相关的方法,IOUtils一般是拷贝文件。1
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[] args) throws 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[] args) throws 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
Atitit.跨语言 文件夹与文件的io操作集合 草案的更多相关文章
- atitit.跨语言实现备份mysql数据库 为sql文件特性 api 兼容性java c#.net php js
atitit.跨语言实现备份mysql数据库 为sql文件特性 api 兼容性java c#.net php js 1. 两个方法:: bat vs mysqldump(推荐) vs lang ...
- C语言判断文件夹或者文件是否存在的方法【转】
C语言判断文件夹或者文件是否存在的方法 方法一:access函数判断文件夹或者文件是否存在 函数原型: int access(const char *filename, int mode); 所 ...
- day18 时间:time:,日历:calendar,可以运算的时间:datatime,系统:sys, 操作系统:os,系统路径操作:os.path,跨文件夹移动文件,递归删除的思路,递归遍历打印目标路径中所有的txt文件,项目开发周期
复习 ''' 1.跨文件夹导包 - 不用考虑包的情况下直接导入文件夹(包)下的具体模块 2.__name__: py自执行 '__main__' | py被导入执行 '模块名' 3.包:一系列模块的集 ...
- atitit.跨语言执行cmd cli api的原理及兼容性设计草案
atitit.跨语言执行cmd cli api的原理及兼容性设计草案 1. 标准输入,标准输出,标准错误与重新定向1 2. 常见问题2 2.1. 执行bat文件2 2.2. 执行bat文件 /c ...
- Atitit.跨语言反射api 兼容性提升与增强 java c#。Net php js
Atitit.跨语言反射api 兼容性提升与增强 java c#.Net php js 1. 什么是反射1 1.1. 反射提供的主要功能:1 1.2. 实现反射的过程:1 ...
- [MSDN]使用 REST 处理文件夹和文件
msdn: http://msdn.microsoft.com/zh-cn/library/dn292553.aspx 了解如何使用 SharePoint 2013 REST 界面对文件夹和文件执行基 ...
- bat 复制文件夹,文件名递增 等操作
句尾无';' @echo off : 回显,使命令不在dos中一行一行输出 pause : 暂停,以便看到输出结果 变量 %% 与 % % : https://zhidao.baidu.com/que ...
- SharePoint REST API - 文件夹和文件
博客地址:http://blog.csdn.net/FoxDave 本篇讲述如何通过REST操作文件夹和文件. 使用REST操作文件夹 在你知道某个文档库中的文件夹的URL时,可以使用如下的代码获 ...
- python调用另一个文件中的代码,pycharm环境下:同文件夹下文件(.py)之间的调用,出现红线问题
如何调用另一个python文件中的代码无论我们选择用何种语言进行程序设计时,都不可能只有一个文件(除了“hello world”),通常情况下,我们都需要在一个文件中调用另外一个文件的函数呀数据等等, ...
随机推荐
- awk 精彩文章
https://coolshell.cn/articles/9070.html 我从netstat命令中提取了如下信息作为用例: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...
- RPD Volume 172 Issue 1-3 December 2016 评论03
Using Stable Free Radicals to Obtain Unique and Clinically Useful Data In Vivo in Human Subjects Abs ...
- 【分块】【树状数组】bzoj3744 Gty的妹子序列
离散化,分块. 预处理出:ans[i][j] 第i块到第j块的逆序对数. f[i][j] 第1~i块中大于j的数的个数. g[i][j] 第1~j块中小于j的数的个数. 每次询问时对于整块部分可以O( ...
- React Native学习之DeviceEventEmitter传值
使用DeviceEventEmitter前需添加 import { AppRegistry, StyleSheet, Text, View, DeviceEventEmitter } form 'r ...
- MySQL第三方客户端工具
如前所述,MySQL是一个基于客户机--服务器的DBMS,因此,为了使用MySQl,你需要有一个客户机软件给MySQL提供要执行的命令.即你需要一个编写和测试MySQL脚本的工具. 1.MySQL命令 ...
- SQLSERVER中汉字提取首字母的拼音函数的实现
--创建一个汉字提取首字母的函数--还存在一点小小的问题(符号?)create function hs(@a varchar(1000)='')returns varchar(1000)asbegin ...
- UVA-10603-Fill(BFS+优先队列)
There are three jugs with a volume of a, b and c liters. (a, b, and c are positive integers not grea ...
- 用户文件夹在Finder中消失的问题
这个问题最早有人报告说.在升级了10.9.3的机器上.用户文件夹(/Users)会在Finder中消失.可是非常多人没有这个问题.经过多人的重复查证,最后锁定在iTunes 11.2更新上.假设用户打 ...
- vue-resource基本使用方法
一.vue-resource特点 1.体积小:vue-resource非常小巧,在压缩以后只有大约12KB,服务端启用gzip压缩后只有4.5KB大小,这远比jQuery的体积要小得多. 2.支持主流 ...
- prometheus的坑
prometheus是一个用于监控k8s集群状态的工具.今天在主机上配置这个东西,遇到了一个坑,调查了一段时间才解决,记之. 首先,根据网上的教程,利用helm安装这个东西很方便,只要三条指令(ref ...