资源简介
java实现工具类实现复制、粘贴、剪切、删除文件和文件夹
代码片段和文件信息
package com.song.tool;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
/*
* Java实现文件复制、剪切、删除操作
* 文件指文件或文件夹
* 文件分割符统一用“//“
*/
@Component
public class FileOperate {
public static final Logger logger=LoggerFactory.getLogger(FileOperate.class);
/**
* 复制文件或文件夹
*
* @param srcPath
* @param destDir
* 目标文件所在的目录
* @return
*/
public boolean copyGeneralFile(String srcPath String destDir) {
boolean flag = false;
File file = new File(srcPath);
if (!file.exists()) {
logger.info(“源文件或源文件夹不存在!“);
return false;
}
if (file.isFile()) { // 源文件
logger.info(“下面进行文件复制!“);
flag = copyFile(srcPath destDir);
} else if (file.isDirectory()) {
logger.info(“下面进行文件夹中的文件复制!“);
flag = copyFiles(srcPathdestDir);
}
return flag;
}
/**
* 复制文件夹中文件到指定目录
* @param srcPath 源文件目录
* @param destDir 目标文件目录
* @return
*/
public boolean copyFiles(String srcPathString destDir){
boolean flag = false;
File DirFile=new File(srcPath);
if (DirFile.isDirectory()){
File[] filesList=DirFile.listFiles();
for (File srcFile:filesList){
if (!srcFile.exists()) { // 源文件不存在
logger.info(“源文件不存在“);
return false;
}
// 获取待复制文件的文件名
String path=srcFile.getAbsolutePath();
String fileName = path
.substring(path.lastIndexOf(“\\“)+1path.length());
String destPath = destDir+“/“ + fileName;
if (destPath.equals(srcPath)) { // 源文件路径和目标文件路径重复
logger.info(“源文件路径和目标文件路径重复!“);
return false;
}
File destFile = new File(destPath);
if (destFile.exists() && destFile.isFile()) { // 该路径下已经有一个同名文件
logger.info(“目标目录下已有同名文件!“);
return false;
}
File destFileDir = new File(destPath);
try {
FileInputStream fis = new FileInputStream(srcPath);
FileOutputStream fos = new FileOutputStream(destFile);
byte[] buf = new byte[1024];
int c;
while ((c = fis.read(buf)) != -1) {
fos.write(buf 0 c);
}
fis.close();
fos.close();
flag = true;
} catch (IOException e) {
//
e.printStackTrace();
相关资源
- Java解析bt torrent种子文件的工具类代码
- excel导出可带图片
- commons-lang3-3.1 StringUtils字符串jar包
- java反射工具类 ReflectionUtils
- 解析wkt数据
- Gson工具类 JsonUtil
- Android 指纹识别工具类
- 解析excel工具类
- RSAUtil工具类
- java操作mongodb的工具类
- 股票K线指标算法整理Java封装工具类,
- java常用工具类-Verify
- Java 串口rxtxdemo包含发送、接收、以及
- java开发,30个常用工具类总结,全部
- 自己写的支付宝集成工具类,直接调
- zipentry工具类
- httpclient get/post请求工具类map参数封装
- Android资源评论工具类
- gson.jar包
- 基于HttpClient 4.3的可访问自签名HTTPS站
- java阿里云直播推流播流地址生成工具
- Java poi导入导出EXCEL工具类兼容各版本
- Java工具类ZIP解压缩
- ElasticSearchPoolUtil.java(es连接池工具类
- wold转pdf工具类,WordUtil.convertDocxToPD
- java录屏工具类
- 基于Java的SM2_SM3_SM4国密算法java源代码
- sm2-sm4国密算法工具包及工具类
- AES256加密工具类,及其所必须的jar包
- aspose生成word、转pdf的java工具类
评论
共有 条评论