Java文件/文件夹基本操作
文件基本操作:
package file; import java.io.File; import java.io.IOException; /** * @Author YangHe * @Date 2020/4/12 20:41 * 对文件的基本操作 */ public class FileOperation { /** * 创建文件 * @param path * @param fileName * @return */ public static boolean createFile(String path,String fileName){ String str=path+"\\"+fileName; File file=new File(str); if(file.exists()){ //可以判断目录或者文件是否存在 System.out.println("文件存在,删除重建!"); deleteFile(str); } try { file.createNewFile(); } catch (IOException e) { return false; } return true; } /** * 删除文件 * @param path * @return */ public static boolean deleteFile(String path){ File file=new File(path); if(file.exists()){ //可以判断目录或者文件是否存在 return file.delete(); }else{ System.out.println("文件不存在,无法删除!"); return true; } } /** * 更改文件名 * @param path * @param newFileName * @return */ public static boolean renameTo(String path,String newFileName){ File file=new File(path); if(file.exists()){ File file2=new File(file.getParent()+"\\"+newFileName); return file.renameTo(file2); }else{ System.out.println("文件不存在,无法更改!"); return false; } } /** * 获取文件信息 * @param path */ public static void getFileInfo(String path){ File file=new File(path); if(file.exists()){ System.out.println("1.获取文件名或者路径名:"+file.getName()); System.out.println("2.获取File对象对应路径名:"+file.getPath()); System.out.println("3.获取File对象绝对路径:"+file.getAbsolutePath()); System.out.println("4.获取File对象父目录:"+file.getParent()); System.out.println("5.获取文件最后修改时间:"+file.lastModified()); System.out.println("6.获取文件长度:"+file.length()); System.out.println("7.判断File对象是否可读:"+file.canRead()); System.out.println("8.判断File对象是否可写:"+file.canWrite()); System.out.println("9.判断File对象是否为文件:"+file.isFile()); System.out.println("10.判断File对象是否为文件夹:"+file.isDirectory()); System.out.println("11.判断File对象是否为绝对路径:"+file.isAbsolute()); }else{ System.out.println("文件不存在,无法获取文件信息"); } } /** * 创建临时文件,虚拟机退出时删除文件 * @param directory */ public static void createTempFile(String directory){ File file=new File(directory); try { File file1=File.createTempFile("aaa",".txt",file); //创建临时文件 file1.deleteOnExit(); //虚拟机退出时删除该文件 } catch (IOException e) { e.printStackTrace(); } } public static void main(String[] args) { String path="D:\\temp"; String fileName="test.txt"; String str=path+"\\"+fileName; //System.out.println(createFile(path,fileName)); //System.out.println(deleteFile(str)); //System.out.println(renameTo(str,"test.txt")); // createTempFile(path); getFileInfo(str); } }
文件夹基本操作:
package file; import java.io.File; /** * @Author YangHe * @Date 2020/4/12 21:16 * 目录的相关操作 */ public class FolderOperation { /** * 创建文件夹 * @param directory * @return */ public static boolean createFolder(String directory){ File file=new File(directory); if(file.exists()){ System.out.println("文件夹存在,先删除再重建!"); deleteFolder(directory); } return file.mkdirs();//mkdir 创建只能创建一层目录,当上一级目录不存则程序报异常,mkdirs 可以创建多层目录 } /** * 删除文件夹 * @param directory * @return */ public static boolean deleteFolder(String directory){ File file=new File(directory); if(file.exists()){ return file.delete(); }else{ System.out.println("文件夹不存在,无法删除!"); return true; } } /** * 获取路径下文件夹或者文件 * @param directory */ public static void getList(String directory){ File file=new File(directory); if(file.exists()){ String[] files=file.list(); //列出File对象下的所有子文件名和路径名,返回String数组 File[] files1s=file.listFiles();//列出File对象下的所有子文件夹和路径,返回File数组 for(String str : files){ System.out.println(str); } }else{ System.out.println("文件夹不存在"); } } public static void main(String[] args) { String directory="D:\\temp\\yanghe"; //System.out.println(createFolder(directory)); //System.out.println(deleteFolder(directory)); getList("D:\\WorkSpace"); } }