java中file怎么在指定的文件夹中创建多个文件

java中file怎么在指定的文件夹中创建多个文件,第1张

具体的创建方法参照下面的实例:

public class FileTest {

  public static void main(String[] args) {

        // 根据系统的实际情况选择目录分隔符(windows下是,linux下是/)

        String separator = File.separator

        String directory = "myDir1" + separator + "myDir2"

        // 以下这句的效果等同于上面两句,windows下正斜杠/和反斜杠都是可以的

// linux下只认正斜杠,为了保证跨平台性,不建议使用反斜杠(在java程序中是转义字符,用\来表示反斜杠)

 衡宴粗       // String directory = "myDir1/myDir2"

        String fileName = "myFile.txt"

        // 在内存中创建一个文件对象,注意:此时还没有在硬盘对应目录下创建实实在在的文件

        File f = new File(directory,fileName)

        if(f.exists()) {

          // 文件已经存在,输出文件的相关信息

            System.out.println(f.getAbsolutePath())

            System.out.println(f.getName())

            System.out.println(f.length())

        } else {

      祥段  咐镇  //  先创建文件所在的目录

            f.getParentFile().mkdirs()

            try {

             // 创建新文件

                f.createNewFile()

            } catch (IOException e) {

                System.out.println("创建新文件时出现了错误。。。")

                e.printStackTrace()

            }

        }

        

    }

 

}

你先手动在E盘新建A文件夹带带,运行程序,铅行禅完毕后看是否新建了BCD三个文件夹

public class Test {

public static void main(String[] args){

File f=new File("E:/A/B")

if(!f.exists()){

f.mkdir()

}

f=new File("E:/A/C"槐尘)

if(!f.exists()){

f.mkdir()

}

f=new File("E:/A/D")

if(!f.exists()){

f.mkdir()

}

}

}

如果JDK是java7,那么可以使用WatchService,这个提供了非常底层的实现。

如果非要自己实现一个.建议使用java.util.Timer 类或者线程,定时执行文件检查任务

下面比较啰嗦和简陋的实现了需求,简单的测试了,但不保证没有bug,仅作参考

import java.io.File

import java.io.IOException

import java.util.ArrayList

public class FindNewFile {

public static void main(String[] args) {

while(true){

String path = "c:\\"//路径

File file = new File(path)

File[] 掘碰链判孙files = file.listFiles()

ArrayList<File> list = new ArrayList<File>()//文件对象存到list里

for (int i = 0 i < files.length i++) {

list.add(files[i])

}

try {

Thread.sleep(5000)//暂停5000毫秒 

} catch (InterruptedException e) {

e.printStackTrace()

}

File 吵稿file2 = new File(path)

File[] files2 = file2.listFiles()

ArrayList<File> list2 = new ArrayList<File>()

for (int i = 0 i < files2.length i++) {

list2.add(files2[i])

}

if(list2.size()>list.size()){

list2.removeAll(list)//用后来的文件夹对象减去之前的对象,

for (int i = 0 i < list2.size() i++) {

try {

System.out.println(list2.get(i).getCanonicalPath())

} catch (IOException e) {

e.printStackTrace()

}

}

}else{

continue

}

}

}

}

输出

C:\新建公文包

C:\新建 Microsoft Publisher 文档.pub

基本实现了对新增文件的输出文件名


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/tougao/12215226.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存