开发项目过程中,会用到很多工具类,今天分享一个Java中File操作工具类,可以帮你节约时间,提高开发效率。

File工具类

public class CreateFileUtil {

public static boolean createFile(String destFileName) {

File file = new File(destFileName);

if(file.exists()) {

System.out.println("创建单个文件" + destFileName + "失败,目标文件已存在!");

return false;

}

if (destFileName.endsWith(File.separator)) {

System.out.println("创建单个文件" + destFileName + "失败,目标文件不能为目录!");

return false;

}

//判断目标文件所在的目录是否存在

if(!file.getParentFile().exists()) {

//如果目标文件所在的目录不存在,则创建父目录

System.out.println("目标文件所在目录不存在,准备创建它!");

if(!file.getParentFile().mkdirs()) {

System.out.println("创建目标文件所在目录失败!");

return false;

}

}

//创建目标文件

try {

if (file.createNewFile()) {

System.out.println("创建单个文件" + destFileName + "成功!");

return true;

} else {

System.out.println("创建单个文件" + destFileName + "失败!");

return false;

}

} catch (IOException e) {

e.printStackTrace();

System.out.println("创建单个文件" + destFileName + "失败!" + e.getMessage());

return false;

}

}

public static boolean createDir(String destDirName) {

File dir = new File(destDirName);

if (dir.exists()) {

System.out.println("创建目录" + destDirName + "失败,目标目录已经存在");

return false;

}

if (!destDirName.endsWith(File.separator)) {

destDirName = destDirName + File.separator;

}

//创建目录

if (dir.mkdirs()) {

System.out.println("创建目录" + destDirName + "成功!");

return true;

} else {

System.out.println("创建目录" + destDirName + "失败!");

return false;

}

}

public static String createTempFile(String prefix, String suffix, String dirName) {

File tempFile = null;

if (dirName == null) {

try{

//在默认文件夹下创建临时文件

tempFile = File.createTempFile(prefix, suffix);

//返回临时文件的路径

return tempFile.getCanonicalPath();

} catch (IOException e) {

e.printStackTrace();

System.out.println("创建临时文件失败!" + e.getMessage());

return null;

}

} else {

File dir = new File(dirName);

//如果临时文件所在目录不存在,首先创建

if (!dir.exists()) {

if (!CreateFileUtil.createDir(dirName)) {

System.out.println("创建临时文件失败,不能创建临时文件所在的目录!");

return null;

}

}

try {

//在指定目录下创建临时文件

tempFile = File.createTempFile(prefix, suffix, dir);

return tempFile.getCanonicalPath();

} catch (IOException e) {

e.printStackTrace();

System.out.println("创建临时文件失败!" + e.getMessage());

return null;

}

}

}

public static void main(String[] args) {

//创建目录

String dirName = "D:/work/temp/temp0/temp1";

CreateFileUtil.createDir(dirName);

//创建文件

String fileName = dirName + "/temp2/tempFile.txt";

CreateFileUtil.createFile(fileName);

//创建临时文件

String prefix = "temp";

String suffix = ".txt";

for (int i = 0; i < 10; i++) {

System.out.println("创建了临时文件:"

+ CreateFileUtil.createTempFile(prefix, suffix, dirName));

}

//在默认目录下创建临时文件

for (int i = 0; i < 10; i++) {

System.out.println("在默认目录下创建了临时文件:"

+ CreateFileUtil.createTempFile(prefix, suffix, null));

}

}

}

以上,是我实际项目中用过的File工具类,仅供参考,有什么好的方法,可以评论区交流。

我是一名码龄10年的程序员,在这里会分享实在干货,让你少走弯路,成就精彩人生。

ad file type not recognised_Java实用工具类:File工具类方法学习,可创建目录及文件...相关推荐

  1. Java常用工具类---IP工具类、File文件工具类

    package com.jarvis.base.util; import java.io.IOException; import java.io.InputStreamReader; import j ...

  2. java filehelper_Java常用工具类---IP工具类、File文件工具类

    package com.jarvis.base.util; import java.io.IOException; import java.io.InputStreamReader; import j ...

  3. Hutool工具类和工具方法

    基础工具类: StrUtil/StringUtils -字符串工具类 添加移除:addXXX/appendXXX/removeXXX判断:containsXXX/startWithXXX/endWit ...

  4. 自定义工具类:工具类介绍

    自定义工具类 自定义注解 自定义注解 package com.learn.domain.poi;import java.lang.annotation.ElementType; import java ...

  5. android 图片缓存工具类,Android工具类系列-Glide图片缓存与圆角

    Glide的图片缓存和清除图片缓存 public class GlideCacheUtil { private static GlideCacheUtil inst; public static Gl ...

  6. java s结尾的工具类_FilenameUtils工具类

    commons-io commons-io 2.4 import java.util.ArrayList; import java.util.List; import org.apache.commo ...

  7. c mysql 工具类_Jave工具——servlet+jsp编程中mysql数据库连接及操作通用工具类

    该工具类是在JavaWeb中连接mysql所用到的通用工具类 该类用于Java+Servlet的编程中,方便数据库的操作,连接,获取其列表值.下面是这个数据库操作类的通用方法,基本上能够用于类里面只含 ...

  8. 常用工具类之jwt的学习使用

    什么是jwt 首先jwt其实是三个英语单词JSON Web Token的缩写.通过全名你可能就有一个基本的认知了.token一般都是用来认证的,比如我们系统中常用的用户登录token可以用来认证该用户 ...

  9. 工具类-httpClient工具类

    httpClient工具类 1.httpClient工具类(http/https.重发.超时.连接数的设置) package com.xxxxxxx.xxxx.xxxx.payutil;import ...

最新文章

  1. flex弹性布局操练2
  2. mysql oracle 数据类型转换_Mysql与Oracle之间的数据类型转换
  3. 刘润、叶军、付晓岩等大咖同台“论道”:如何成为数字化经济中的刚需人才?|福利赠票...
  4. 修改 Mac 版 Safari、Chrome、FireFox、Opera 的 User-Agent
  5. 安装XHProf分析PHP性能瓶颈(原创)
  6. 金山毒霸免费Wifi独立版,只需一块无线网卡,完爆360随身wifi
  7. EViews10.0程序安装及注意事项
  8. 终端安全防护技术研究(四)
  9. 生信学习-高通量分析-NMDS分析: 非度量多维尺度分析
  10. 信噪比db换算_DB和dBm有哪些区别 DB和dBm区别介绍【图文】
  11. 计算机应用基础 机考,计算机应用基础机考答案
  12. 高效的APP在线制作平台,让梦想轻松孵化器
  13. 出色性能+创新设计 新华三AMD服务器
  14. 创业好,还是上班好?你觉得呢
  15. html2canvas页面滚动时截图不全空白问题
  16. Html5 jquery视频播放插件Video.js
  17. tar -d 选项 比较归档文件与文件系统中的内容
  18. 怎么开qq远程连接服务器,QQ远程协助出现权限问题该怎么处理?不用慌这样保证解决...
  19. JVM中的对象探秘(三)- 对象的实例数据与对齐填充
  20. 树莓派WIFI信号强度测试

热门文章

  1. 最近发包给朋友,搞定软件小活儿、解决小功能模块的感受
  2. 2.2物理层传输介质
  3. Matlab高光谱样本相关性分析
  4. mysql的代码需要保存吗_php向Mysql数据库保存数据的代码
  5. 1660用哪个驱动稳定_PDF转word怎么转?哪个PDF转换器最好用?-PDF ——快科技(驱动之家旗下媒体)-...
  6. android 发送广播_从0系统学Android--5.2 发送广播
  7. 数据倾斜?几招把你安排的板板正正的!
  8. JMM同步原语之final域的内存语义
  9. Java技术回顾之JNDI--命名和目录服务基本概念
  10. C++学习之路 | PTA乙级—— 1086 就不告诉你 (15 分)(精简)