文件/目录部分处理工具类 DealDir.java
- package com.util;
- import java.io.File;
- import java.util.StringTokenizer;
- /**
- * 文件/目录 部分处理
- * @createTime Dec 25, 2010 7:06:58 AM
- * @version 1.0
- */
- public class DealDir {
- /**
- * 获取文件的后缀名并转化成大写
- *
- * @param fileName
- * 文件名
- * @return
- */
- public String getFileSuffix(String fileName) throws Exception {
- return fileName.substring(fileName.lastIndexOf(".") + 1,
- fileName.length()).toUpperCase();
- }
- /**
- * 创建多级目录
- *
- * @param path
- * 目录的绝对路径
- */
- public void createMultilevelDir(String path) {
- try {
- StringTokenizer st = new StringTokenizer(path, "/");
- String path1 = st.nextToken() + "/";
- String path2 = path1;
- while (st.hasMoreTokens()) {
- path1 = st.nextToken() + "/";
- path2 += path1;
- File inbox = new File(path2);
- if (!inbox.exists())
- inbox.mkdir();
- }
- } catch (Exception e) {
- System.out.println("目录创建失败" + e);
- e.printStackTrace();
- }
- }
- /**
- * 删除文件/目录(递归删除文件/目录)
- *
- * @param path
- * 文件或文件夹的绝对路径
- */
- public void deleteAll(String dirpath) {
- if (dirpath == null) {
- System.out.println("目录为空");
- } else {
- File path = new File(dirpath);
- try {
- if (!path.exists())
- return;// 目录不存在退出
- if (path.isFile()) // 如果是文件删除
- {
- path.delete();
- return;
- }
- File[] files = path.listFiles();// 如果目录中有文件递归删除文件
- for (int i = 0; i < files.length; i++) {
- deleteAll(files[i].getAbsolutePath());
- }
- path.delete();
- } catch (Exception e) {
- System.out.println("文件/目录 删除失败" + e);
- e.printStackTrace();
- }
- }
- }
- /**
- * 文件/目录 重命名
- *
- * @param oldPath
- * 原有路径(绝对路径)
- * @param newPath
- * 更新路径
- * @author lyf 注:不能修改上层次的目录
- */
- public void renameDir(String oldPath, String newPath) {
- File oldFile = new File(oldPath);// 文件或目录
- File newFile = new File(newPath);// 文件或目录
- try {
- boolean success = oldFile.renameTo(newFile);// 重命名
- if (!success) {
- System.out.println("重命名失败");
- } else {
- System.out.println("重命名成功");
- }
- } catch (RuntimeException e) {
- e.printStackTrace();
- }
- }
- }
文件/目录部分处理工具类 DealDir.java的更多相关文章
- Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类
Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类 ============================== ©Copyright 蕃薯耀 20 ...
- 【转载】C#工具类:实现文件操作File的工具类
在应用程序的开发中,文件操作的使用基本上是必不可少的,FileStream类.StreamWriter类.Directory类.DirectoryInfo类等都是文件操作中时常涉及到的类,我们可以通过 ...
- txt文件按行处理工具类(可以截取小说、分析日志等)【我】
txt文件按行处理工具类(可以分析日志.截取小说等) package file; import java.io.BufferedReader; import java.io.BufferedWrite ...
- c#中@标志的作用 C#通过序列化实现深表复制 细说并发编程-TPL 大数据量下DataTable To List效率对比 【转载】C#工具类:实现文件操作File的工具类 异步多线程 Async .net 多线程 Thread ThreadPool Task .Net 反射学习
c#中@标志的作用 参考微软官方文档-特殊字符@,地址 https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/toke ...
- Java日期工具类,Java时间工具类,Java时间格式化
Java日期工具类,Java时间工具类,Java时间格式化 >>>>>>>>>>>>>>>>>&g ...
- Java字符串转16 进制工具类Hex.java
Java字符串转16 进制工具类Hex.java 学习了:https://blog.csdn.net/jia635/article/details/56678086 package com.strin ...
- Java Cookie工具类,Java CookieUtils 工具类,Java如何增加Cookie
Java Cookie工具类,Java CookieUtils 工具类,Java如何增加Cookie >>>>>>>>>>>>& ...
- UrlUtils工具类,Java URL工具类,Java URL链接工具类
UrlUtils工具类,Java URL工具类,Java URL链接工具类 >>>>>>>>>>>>>>>&g ...
- [Google Guava] 2.3-强大的集合工具类:java.util.Collections中未包含的集合工具
原文链接 译文链接 译者:沈义扬,校对:丁一 尚未完成: Queues, Tables工具类 任何对JDK集合框架有经验的程序员都熟悉和喜欢java.util.Collections包含的工具方法.G ...
随机推荐
- iOS app的破解原理,就是去除已付费的账户信息的原理是什么?
正规的应用程序(IPA 格式,官方软件店发布)在被 iTunes 同步到 iPhone 的时候会调用系统进程 INSTALLD 对应用程序进行证书校验(GPLv3 授权)而这个证书本身是由官方捆绑在应 ...
- C#操作指针
如何:递增和递减指针 使用增量和减量运算符 ++ 和 -- 可以将 pointer-type* 类型的指针的位置改变 sizeof (pointer-type). 增量和减量表达式的形式如下: ++p ...
- 第二个Sprint冲刺第七天
讨论地点:宿舍 讨论成员:邵家文.李新.朱浩龙.陈俊金 讨论:整理已完成的功能
- C++学习笔记3:一些错误
错误1:执行程序后,控制台闪烁后退出 处理办法: (1)添加头文件:#include <iostream> (2)在程序返回前添加代码: std::cin.clear();//清除错误标志 ...
- php-多态
<?php //面对对象三大特性//封装//目的:让类更安全//做法:成员变量变为私有的,通过方法来间接操作成员变量,在方法里面加限制条件 //继承//概念:子类可以继承父类的一切//方法重写: ...
- Core Java Volume I — 4.5. Method Parameters
4.5. Method ParametersLet us review the computer science terms that describe how parameters can be p ...
- Think Python - Chapter 8 - Strings
8.1 A string is a sequenceA string is a sequence of characters. You can access the characters one at ...
- 尽可能使用 const
前言 const 关键字是常量修辞符,如果要告知编译器某个变量在程序中不会发生改变,则可将其声明为 const. 但,对 const 关键字的认识不能仅仅停留在这一层 - 它提供了很多更强大的功能. ...
- CPU的频率、外频、倍频与超频
如,现有一CPU:Intel Core 2 Duo E8400,其频率是3.0GHz: CPU的外频指的是CPU与外部组件进行数据传输/运算时的速度,倍频则是CPU内部用来加速工作性能的一个倍数,两者 ...
- HDU 5748 最长上升子序列的长度nlogn(固定尾部)
Bellovin Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total ...