`
web_in
  • 浏览: 15209 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

[实用工具类与产品化]--方法的重载,Java自动创建文件夹,文件转移【难度 ★★★】

阅读更多
自动创建文件夹,文件转移,基本上系每个项目都需要遇到的工作。

(1)在Java中,可以使用mkdirs()方法实现。mkdirs()对比起mkdir()方法更为好用,因为其能创建包括所有必须但不存在的父目录,该方法隶属于File类。代码举例:

public static boolean createDir(String destDirName){
    File dir = new File(destDirName);
    if(dir.exists()){
        return false;
    }else{
        dir.mkdirs();
        return true;
    }
}

该方法使用简单,但功能较为强大。当然,如果在项目开发中忘记了创建文件夹,又不想改程序,亦可以通过bat批处理辅助完成该任务。

(2)在Java中,文件的移动需要使用到File类中的renameTo()方法。

public static void fileMove(File file, String toFolder){
    if(file.exists() == false){
        System.out.println("The source file(" + file.getAbsoluteFile() + ") can not be found!");
        return;
    }
    File newFolder = new File(toFolder);
    if(newFolder.exists() == false){
        newFolder.mkdirs();
    }
    File moveFile = new File(newFolder.getPath() + "\\" + file.getName());
    if(moveFile.exists()){
        String strNewFileName = newFolder.getPath() + "\\" + file.getName() + "_" + new Date().getTime();
        System.out.println("File:" + moveFile.getName() + " is exist, File will be change by this name:" + strNewFileName);
        moveFile = new File(strNewFileName);
    }
    file.renameTo(moveFile);
}


    在main方法中使用类似 fileMove(new File("c:\\aaa.txt"), "D:");语句,文件file会直接转移到新的文件夹toFolder中。

补充:面向对象的特性之一,就是方法的重载,我以转移文件的方法为例:多写一个方法:
public static void fileMove(String fileName, String toFolder){
    fileMove(new File(fileName), toFolder);
}

    则再main方法中,使用任何一句语句都可以执行成功:
     fileMove("c:\\aaa.txt", "D:"); 或者 fileMove(new File("c:\\aaa.txt"), "D:");

该例子亦系对重载,非常好的一个描述。
   

分享到:
评论

相关推荐

    根据文件日期创建日期层级文件夹并迁移文件

    标题“根据文件日期创建日期层级文件夹并迁移文件”涉及的核心技术是自动化处理文件系统,具体包括文件日期的读取、文件夹结构的动态创建以及文件的移动操作。这一过程通常用于整理大量文件,便于管理和检索。以下是...

    Java获取文件夹大小、文件大小,文件个数

    Java获取文件夹大小、文件大小、文件个数 Java 获取文件夹大小、文件...Java 获取文件夹大小、文件大小、文件个数可以通过使用 File 类和递归方法来实现。同时,格式化文件大小也可以使用 DecimalFormat 类来实现。

    Rabbitmq工具类,java工具类RabbitmqUtil

    `RabbitmqUtil` 是一个专门为Java开发者设计的工具类,简化了与RabbitMQ交互的复杂过程,使得开发者能够更快速、更方便地发送和接收消息。 首先,我们来详细了解一下`RabbitmqUtil`工具类的主要功能: 1. **连接...

    ProtoBuf的自动编译生成工具,自动生成java和C#文件,全自动化

    为项目开发了一个proto的自动生成工具,需要把protoc.exe放入protobuf-net/ProtoGen文件夹下面,在protoGen文件夹下面建立out文件夹,out文件夹下面分两个文件,一个java一个csharp,把*.proto文件直接放在ProtoGen...

    spring boot文件夹文件监听程序

    总的来说,"spring boot文件夹文件监听程序"是一个结合了Java文件系统监听和Spring Boot自动化功能的实用工具,它可以实时监控指定目录,及时响应文件变化,对于文件管理、数据同步等场景具有很高的价值。...

    Java反序列化终极测试工具

    Java反序列化漏洞通常出现在以下场景:当一个不可信的输入源(例如网络流或外部文件)被用来反序列化对象时,恶意用户可能会构造特殊的序列化数据来触发非预期的行为,比如执行任意代码。这种漏洞在许多大型系统中曾...

    castor插件java对象和XML自动绑定maping文件生成和java对象一键生成工具

    1. **创建映射文件**:编写或利用工具自动生成`.mapping`文件,定义XML元素与Java类之间的映射规则。 2. **配置Castor**:在项目中添加Castor依赖,并配置映射文件的位置。 3. **Java对象的序列化与反序列化**:调用...

    把wsdl文件转换成java类 使用wsdl2Java工具

    为了在Java环境中与这些Web服务交互,我们需要将WSDL文件转换为Java类,这就是`wsdl2java`工具的作用。 `wsdl2java`是Apache Axis项目的一部分,它是一个强大的工具,可以自动生成Java客户端和服务端代码,这些代码...

    BAT 批处理拷贝整个文件夹到别的文件夹下

    标题中的“BAT 批处理拷贝整个文件夹到别的...综上所述,批处理是Windows系统中一种实用的自动化工具,尤其适用于文件和文件夹的管理和维护。通过学习和编写批处理脚本,可以提高工作效率,简化日常的文件操作任务。

    批处理bat文件实现复制、删除、创建文件夹、执行程序、打开文件

    ### 批处理bat文件实现复制、删除、创建文件夹、执行程序、打开文件 #### 一、批处理脚本概述 批处理脚本是通过Windows操作系统提供的命令行工具编写的一系列命令集合,这些命令可以自动执行一系列的任务。批处理...

    JAVA通过网络调用网络打印机的工具类

    ### JAVA通过网络调用网络打印机的工具类 #### 概述 在现代企业环境中,自动化流程的实现变得越来越重要。特别是在物流行业中,自动化打印发票和快递单能够大大提高工作效率,减少人为错误。本篇文章将深入探讨如何...

    Java制作的快速打开文件夹、程序的小工具 .

    `Desktop`类提供了与本地操作系统进行交互的能力,包括打开文件、浏览文件夹、发送邮件等。通过`Desktop.getDesktop().open(File)`方法,我们可以让操作系统默认的应用程序打开指定的文件或目录。 至于快速打开程序...

    effective-java.pdf

    这种技术同样适用于集合框架中的实用工具实现,通过返回接口类型的对象,客户端代码可以通过接口来引用对象,无需关心具体的实现类,这符合接口编程的最佳实践。 总结来说,静态工厂方法在Java中提供了一种比构造...

    同个文件夹复制到不同的文件夹中

    本例中的代码主要利用了 `java.io.File` 类来进行文件的读取与写入。 - **`File` 类**:用于表示文件或目录路径名的抽象表示形式。 - **`FileInputStream` 和 `FileOutputStream`**:用于读取文件和写入文件的基本...

    Java访问MongoDB实用工具类

    为了方便Java程序员与MongoDB交互,通常会创建一些实用工具类,将常见的数据库操作封装起来,降低代码复杂性。本篇文章将详细介绍如何利用提供的"Java访问MongoDB实用工具类"进行高效开发。 首先,`mongodb....

    java 生成树形文件目录

    在Java编程中,生成树形文件目录是一项常见的任务,它涉及到文件系统操作和数据结构的知识。这个任务的主要目的是创建一个程序,能够以树状结构显示计算机中的文件和目录,类似于Windows资源管理器中的视图。这里...

    java读取grib2文件

    1. **导入必要的库**:首先,在Java代码中需要导入`ucar.nc2.grib.collection.Grib2Iosp`和`ucar.nc2.NetcdfFile`等相关类,这些类提供了读取GRIB2文件的接口。 2. **打开GRIB2文件**:使用`NetcdfFile.open`方法,...

    windows服务小示例,每天定时删除文件夹里面7天前的文件,清理垃圾

    在Windows操作系统中,服务是一种后台运行的程序...综上所述,这个"windows服务小示例"是一个实用的自动化清理工具,通过定时器和Windows服务机制,实现了定期清理指定文件夹内7天前的文件,有效帮助用户管理存储空间。

    java实现word模板的自动替换

    Java 实现Word模板的自动替换是一项常见的任务,尤其在自动化文档生成、批量报告制作等领域有着广泛应用。这个主题主要涉及到Java编程、Apache POI库以及Word文档处理的知识点。Apache POI是Java中用于读写Microsoft...

Global site tag (gtag.js) - Google Analytics