精华内容
下载资源
问答
  • 主要为大家详细介绍了Java遍历文件夹下所有文件并重新命名,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 本文实例为大家分享了Java遍历文件夹下所有文件并重命名的具体代码,供大家参考,具体内容如下项目中需要将一批文件全部重新命名,文件实在太多就写了这个工具类这个工具类是将路径下的文件全部重新命名,且名字为同...

    本文实例为大家分享了Java遍历文件夹下所有文件并重命名的具体代码,供大家参考,具体内容如下

    项目中需要将一批文件全部重新命名,文件实在太多就写了这个工具类

    这个工具类是将路径下的文件全部重新命名,且名字为同一个

    package com.xingli.FileDemo;

    import java.io.File;

    /**

    *@ClassName FileDemo

    *@Description TODO

    *@Author William

    *@Date 2019/8/8 14:51

    *@Version 1.0

    */

    public class FileDemo {

    public static void main(String[] args) {

    changeFileName("D:paper");

    }

    /**

    *@description: 通过文件路径,修改该路径下所有文件的名字

    * @param path 文件夹路径

    * @return:

    * @author: William

    * @date 2019/8/8 14:52

    */

    public static void changeFileName(String path){

    File file = new File(path);

    if(file.exists()){

    File[] files = file.listFiles();

    if (null == files || files.length == 0) {

    System.out.println("文件夹是空的!");

    return;

    } else {

    for (File file2 : files) {

    if (file2.isDirectory()) {

    changeFileName(file2.getAbsolutePath());

    } else {

    System.out.println("文件:" + file2.getAbsolutePath());

    String filePath = file2.getAbsolutePath();

    String fileName = filePath.substring(0,filePath.lastIndexOf(""))+"aaa"+filePath.substring(filePath.lastIndexOf("."));

    File oriFile = new File(filePath);

    boolean b = oriFile.renameTo(new File(fileName));

    System.out.println(b);

    }

    }

    }

    }else{

    System.out.println("该路径不存在");

    }

    }

    }

    小编再为大家分享java使用File类批量重命名文件的一段代码:

    package test.java.com;

    import java.util.*;

    import java.io.*;

    public class RenameFile {

    public static void main(String args[]) {

    File fl=new File("E://文件夹"); //这里写上发替换的文件夹路径,注意使用双斜杠

    String[] files=fl.list();

    File f=null;

    String filename="";

    for(String file:files)

    {

    f=new File(fl,file);//注意,这里一定要写成File(fl,file)如果写成File(file)是行不通的,一定要全路径

    filename=f.getName();

    // System.out.println(filename);

    f.renameTo(new File(fl.getAbsolutePath()+"//"+filename.replace("要替换掉的内容", "替换成的内容"))));//这里可以反复使用replace替换,当然也可以使用正则表达式来替换了

    }

    }

    }

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易采站长站。

    展开全文
  • 文章目录系列文章目录JAVA遍历文件夹下所有文件并将文件名存储在txt文件内 JAVA遍历文件夹下所有文件并将文件名存储在txt文件内 此程序会将隐藏文件也遍历出来。 如果C盘遍历执行失败可以试试D盘,因为系统可能会...

    系列文章目录


    JAVA遍历文件夹下所有文件并将文件名存储在txt文件内

    此程序会将隐藏文件也遍历出来。
    如果C盘遍历执行失败可以试试D盘,因为系统可能会保护不让程序读取。

    代码如下:

    import java.io.File;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.io.PrintWriter;
    
    public class FileCheck {
        public static void main(String[] args) {
            File file = new File ("D://");
            File[] files = file.listFiles();
            try{
                File file2 = new File ("D://names.txt");
                FileWriter fw = new FileWriter(file2);
                PrintWriter pw = new PrintWriter(fw,true);
                for (int i=0;i<files.length;i++){
                    pw.println(files[i].getName());
                }
                pw.close();
                fw.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    
    }
    
    
    展开全文
  • 本文实例为大家分享了Java遍历文件夹下所有文件并重命名的具体代码,供大家参考,具体内容如下项目中需要将一批文件全部重新命名,文件实在太多就写了这个工具类这个工具类是将路径下的文件全部重新命名,且名字为同...

    本文实例为大家分享了Java遍历文件夹下所有文件并重命名的具体代码,供大家参考,具体内容如下

    项目中需要将一批文件全部重新命名,文件实在太多就写了这个工具类

    这个工具类是将路径下的文件全部重新命名,且名字为同一个

    package com.xingli.FileDemo;

    import java.io.File;

    /**

    *@ClassName FileDemo

    *@Description TODO

    *@Author William

    *@Date 2019/8/8 14:51

    *@Version 1.0

    */

    public class FileDemo {

    public static void main(String[] args) {

    changeFileName("D:\\paper");

    }

    /**

    *@description: 通过文件路径,修改该路径下所有文件的名字

    * @param path 文件夹路径

    * @return:

    * @author: William

    * @date 2019/8/8 14:52

    */

    public static void changeFileName(String path){

    File file = new File(path);

    if(file.exists()){

    File[] files = file.listFiles();

    if (null == files || files.length == 0) {

    System.out.println("文件夹是空的!");

    return;

    } else {

    for (File file2 : files) {

    if (file2.isDirectory()) {

    changeFileName(file2.getAbsolutePath());

    } else {

    System.out.println("文件:" + file2.getAbsolutePath());

    String filePath = file2.getAbsolutePath();

    String fileName = filePath.substring(0,filePath.lastIndexOf("\\"))+"\\aaa"+filePath.substring(filePath.lastIndexOf("."));

    File oriFile = new File(filePath);

    boolean b = oriFile.renameTo(new File(fileName));

    System.out.println(b);

    }

    }

    }

    }else{

    System.out.println("该路径不存在");

    }

    }

    }

    小编再为大家分享java使用File类批量重命名文件的一段代码:

    package test.java.com;

    import java.util.*;

    import java.io.*;

    public class RenameFile {

    public static void main(String args[]) {

    File fl=new File("E://文件夹"); //这里写上发替换的文件夹路径,注意使用双斜杠

    String[] files=fl.list();

    File f=null;

    String filename="";

    for(String file:files)

    {

    f=new File(fl,file);//注意,这里一定要写成File(fl,file)如果写成File(file)是行不通的,一定要全路径

    filename=f.getName();

    // System.out.println(filename);

    f.renameTo(new File(fl.getAbsolutePath()+"//"+filename.replace("要替换掉的内容", "替换成的内容"))));//这里可以反复使用replace替换,当然也可以使用正则表达式来替换了

    }

    }

    }

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持聚米学院。

    展开全文
  • 【2·随笔】Java遍历文件夹下所有文件 & 正则查找指定内容并替换 package com.biaogexf.Tools; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io....

    【2·随笔】Java遍历文件夹下所有文件 & 正则查找指定内容并替换

    package com.biaogexf.Tools;
    
    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.InputStreamReader;
    import java.io.PrintWriter;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    
    /**
     * 小工具 找到并替换一个文件夹中的所有文件中的指定内容
     *
     * v-hasPermi="['system:menu:add']" -> v-hasPermi="['system_menu_add']"
     */
    public class Test {
    
        public static void main(String[] args) {
            // 指定要操作的目标文件
            File f = new File("D:/views");
            print(f, 0);
        }
    
        /**
         * 遍历文件夹
         *
         * @param f
         * @param len
         */
        public static void print(File f, int len) {
            File[] file = f.listFiles();
    
            for (int i = 0; i < file.length; i++) {
                if (file[i].isDirectory()) { //判断是否文件夹
                    print(file[i], len + 1);
                }
    
                // 为防止输出文件覆盖源文件,所以更改输出盘路径 也可自行设置其他路径
                // 如果要使输出文件覆盖源文件,则target和
                File outPath = new File(file[i].getParent().replace("d:", "d:"));
                File readfile = new File(file[i].getAbsolutePath());
    
                if (!readfile.isDirectory()) {
                    String filename = readfile.getName(); // 读到的文件名
                    String absolutepath = readfile.getAbsolutePath(); // 文件的绝对路径
                    readFile(absolutepath, filename, i, outPath); // 调用 readFile
                }
            }
        }
    
        /**
         * 读取文件夹下的文件
         *
         * @return
         */
        public static void readFile(String absolutepath, String filename,
                                    int index, File outPath) {
            try {
                // 数据流读取文件 注意编码必须写为"UTF-8",写为"utf-8"会出现错误
                BufferedReader bufReader = new BufferedReader(new InputStreamReader(
                        new FileInputStream(absolutepath), "UTF-8"));
    
                StringBuffer strBuffer = new StringBuffer();
    
                // 匹配模式
                // 要匹配并且修改的文本类似于:v-hasPermi="['system:menu:add']" -> v-hasPermi="['system_menu_add']"
                String pattern = "v-hasPermi=.*:.*:.*";
                Pattern r = Pattern.compile(pattern);
    
                // 一行一行的读取
                for (String temp = null; (temp = bufReader.readLine()) != null;
                     temp = null) {
                    // 用模式去匹配该行文本,看该行文本中是否包含符合我们正则规则的字符串
                    Matcher m = r.matcher(temp);
                    if (m.find()) {
                        String group = m.group(0);
                        System.out.println(group);
                        // 将改行中的所有 ":"替换为"_"
                        temp = temp.replace(":", "_");
                    }
    //                if ((temp.indexOf(oldStr) != -1) &&
    //                        (temp.indexOf(oldStr) != -1)) { // 判断当前行是否存在想要替换掉的字符
    //                    temp = temp.replace(oldStr, newStr); // 此处进行替换
    //                }
    
                    strBuffer.append(temp);
                    strBuffer.append(System.getProperty("line.separator")); // 换行符
                }
    
                bufReader.close();
    
                if (outPath.exists() == false) { // 检查输出文件夹是否存在,若不存在先创建
                    outPath.mkdirs();
                    System.out.println("已成功创建输出文件夹:" + outPath);
                }
    
                // 输入流和输出流的字符编码要一致
                PrintWriter printWriter = new PrintWriter(outPath + "\\" +
                        filename, "UTF-8"); // 替换后输出文件路径
                printWriter.write(strBuffer.toString().toCharArray()); //重新写入
                printWriter.flush();
                printWriter.close();
                System.out.println("第 " + (index + 1) + " 个文件   " + absolutepath +
                        "  已成功输出到    " + outPath + "\\" + filename);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    
    

    涉及到的知识点

    • Java遍历指定文件夹下的所有文件
    • 正则表达式

    参考资料

    Java遍历文件夹下所有文件并替换指定字符串

    展开全文
  • java遍历目录所有文件,很多人第一个想到的是用File.listFiles方法递归. 然而这并不是最好的方法, 这里跟几个其他的方法做一个对比.自己写函数递归google的guava工具包common io工具包jdk自带的nio Files工具...
  • [经常碰到朋友,尤其是初学者对指定文件夹下指定类型文件的读取很困惑,这里,我把自己经常用的程序贴出来,供初学者学些;#include stdafx.h#include windows.h#include #应用场景:比如有一个深层次的文件目录结构...
  • 应用场景:比如有一个深层次的文件目录结构,如:javaAPI每个文件里面都有相同的内容,而我们要统一修改为其他内容。上千个文件如果一个个修改显得太不明智。import java.io.BufferedReader;import java.io.File;...
  • JAVA 遍历文件夹下所有文件(递归调用和非递归调用)1.不使用递归的方法调用.public void traverseFolder1(String path) {int fileNum = 0, folderNum = 0;File file = new File(path);if (file.exists()) {...
  • 应用场景:比如有一个深层次的文件目录结构,如:javaAPI每个文件里面都有相同的内容,而我们要统一修改为其他内容。上千个文件如果一个个修改显得太不明智。import java.io.BufferedReader; import java.io.File; ...
  • JAVA遍历文件所有文件文件夹@Testpublic void traverseFolder1( ) {String path = "D:\\TEST";int fileNum = 0;int folderNum = 0;int foldeNum = 0;File file = new File(path);if (file.exists()) {...
  • //文件读取核心api intptr_t hFile;//64位的int,底层库中用来存放文件的句柄。 struct _finddata_t fileInfo;//一个文件信息的结构体,包括 /* struct _finddata64i32_t { unsigned attrib; __time64_t time_...
  • Java代码 File root = new File("C:/Users/Administrator.PC-20131226PVEV/Desktop/彭君然_robot/robot"); File[] fs = root.listFiles(); int index_no=1; for(int i=0; i; i++){ System.out
  • java遍历文件夹下所有文件,java按照要求遍历文件夹下所有文件,java获取目录下的指定类型文件,java按文件类型获取文件
  • 本文要求遍历指定文件夹下所有文件,包括子文件夹下的文件,供大家参考,具体内容如下代码:package 遍历文件夹所有文件;import java.io.File;public class Test {public static void main(String[] args){File ...
  • File file = new File(path);if (file.exists()) {File[] files = file....if (null == files || files.length == 0) {System.out.println("文件夹是空的!");return;} else {for (File file2 : files) {if (file2...
  • java遍历文件夹下所有文件 public class Test { public static void main(String [] args) { traverseFolder("D:/eclipse/eclipseWorkspace/fileupload/scheme1/"); } public static void t...
  • Java遍历文件夹下所有文件

    万次阅读 2019-06-19 18:41:23
    分为两种,第一种是遍历文件夹下所有文件,不包括文件夹中的文件夹,第二种是包括文件夹中的文件夹。 遍历本文件夹下所有的文件(不包括文件夹下的文件夹里的文件) import java.io.File; public class main { ...
  • 本文要求遍历指定文件夹下所有文件,包括子文件夹下的文件,供大家参考,具体内容如下代码:package 遍历文件夹所有文件;import java.io.File;public class Test {public static void main(String[] args){File ...
  • 将服务器的某个文件夹下的照片移动到指定文件夹中.照片被包含在多个文件里面,需要一层一层遍历, 但文件夹的层数并非都一样.并且最后一层有个excel表,将里面的某个字段作为新的文件夹名. 解决办法: 由于层数并非都...
  • java遍历文件夹下所有文件

    千次阅读 2017-09-19 17:27:15
    * 功能:遍历文件夹 * */ package com.test8; import java.io.File; public class test { public static void main(String[] args) { play(new File("G:\\jsonjiexi\\json")); } static voi
  • JAVA 遍历文件夹下所有文件(递归调用和非递归调用) 1.不使用递归的方法调用. public void traverseFolder1(String path) { int fileNum = 0, folderNum = 0; File file = new File(path); if (file.exists())...
  • 主要为大家详细介绍了java中File类应用遍历文件夹下所有文件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 588
精华内容 235
关键字:

java遍历文件夹下所有文件

java 订阅