⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fileutil.java

📁 java平台下读写配置文件的类
💻 JAVA
字号:
/* * To change this template, choose Tools | Templates * and open the template in the editor. */package FileTools;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;/** * * <p> * Title: 文件处理工具类 * </p> * <p> * Description:实现文件的简单处理,复制文件、目录等 * </p> * <p> * Copyright: Copyright (c) 2005 * </p> * <p> * Company: www.easyjf.com * </p> * * @author 天一 * @version 1.0 */public class FileUtil {    /**     * 复制目录下的文件(不包括该目录)到指定目录,会连同子目录一起复制过去。     *     * @param targetFile     * @param path     */    public static void copyFileFromDir(String targetDir, String path) {        File file = new File(path);        createFile(targetDir, false);        if (file.isDirectory()) {            copyFileToDir(targetDir, listFile(file));        }    }    /**     * 复制目录下的文件(不包含该目录和子目录,只复制目录下的文件)到指定目录。     *     * @param targetDir     * @param path     */    public static void copyFileOnly(String targetDir, String path) {        File file = new File(path);        File targetFile = new File(targetDir);        if (file.isDirectory()) {            File[] files = file.listFiles();            for (File subFile : files) {                if (subFile.isFile()) {                    copyFile(targetFile, subFile);                }            }        }    }    /**     * 复制目录到指定目录。targetDir是目标目录,path是源目录。     * 该方法会将path以及path下的文件和子目录全部复制到目标目录     *     * @param targetDir     * @param path     */    public static void copyDir(String targetDir, String path) {        File targetFile = new File(targetDir);        createFile(targetFile, false);        File file = new File(path);        if (targetFile.isDirectory() && file.isDirectory()) {            copyFileToDir(targetFile.getAbsolutePath() + "/" + file.getName(),                    listFile(file));        }    }    /**     * 复制一组文件到指定目录。targetDir是目标目录,filePath是需要复制的文件路径     *     * @param targetDir     * @param filePath     */    public static void copyFileToDir(String targetDir, String... filePath) {        if (targetDir == null || "".equals(targetDir)) {            System.out.println("参数错误,目标路径不能为空");            return;        }        File targetFile = new File(targetDir);        if (!targetFile.exists()) {            targetFile.mkdir();        } else {            if (!targetFile.isDirectory()) {                System.out.println("参数错误,目标路径指向的不是一个目录!");                return;            }        }        for (String path : filePath) {            File file = new File(path);            if (file.isDirectory()) {                copyFileToDir(targetDir + "/" + file.getName(), listFile(file));            } else {                copyFileToDir(targetDir, file, "");            }        }    }    /**     * 复制文件到指定目录。targetDir是目标目录,file是源文件名,newName是重命名的名字。     *     * @param targetFile     * @param file     * @param newName     */    public static void copyFileToDir(String targetDir, File file, String newName) {        String newFile = "";        if (newName != null && !"".equals(newName)) {            newFile = targetDir + "/" + newName;        } else {            newFile = targetDir + "/" + file.getName();        }        File tFile = new File(newFile);        copyFile(tFile, file);    }    /**     * 复制文件。targetFile为目标文件,file为源文件     *     * @param targetFile     * @param file     */    public static void copyFile(File targetFile, File file) {        if (targetFile.exists()) {            System.out.println("文件" + targetFile.getAbsolutePath() + "已经存在,跳过该文件!");            return;        } else {            createFile(targetFile, true);        }        System.out.println("复制文件" + file.getAbsolutePath() + "到" + targetFile.getAbsolutePath());        try {            InputStream is = new FileInputStream(file);            FileOutputStream fos = new FileOutputStream(targetFile);            byte[] buffer = new byte[1024];            while (is.read(buffer) != -1) {                fos.write(buffer);            }            is.close();            fos.close();        } catch (FileNotFoundException e) {            e.printStackTrace();        } catch (IOException e) {            e.printStackTrace();        }    }    public static String[] listFile(File dir) {        String absolutPath = dir.getAbsolutePath();        String[] paths = dir.list();        String[] files = new String[paths.length];        for (int i = 0; i < paths.length; i++) {            files[i] = absolutPath + "/" + paths[i];        }        return files;    }    public static void createFile(String path, boolean isFile) {        createFile(new File(path), isFile);    }    public static void createFile(File file, boolean isFile) {        if (!file.exists()) {            if (!file.getParentFile().exists()) {                createFile(file.getParentFile(), false);            } else {                if (isFile) {                    try {                        file.createNewFile();                    } catch (IOException e) {                        e.printStackTrace();                    }                } else {                    file.mkdir();                }            }        }    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -