欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 艺术 > Java高级编程—File类(从0到1详解。附有代码+案列)

Java高级编程—File类(从0到1详解。附有代码+案列)

2025/2/23 14:51:50 来源:https://blog.csdn.net/weixin_54555405/article/details/141855111  浏览:    关键词:Java高级编程—File类(从0到1详解。附有代码+案列)

文章目录

  • 二十五.File
    • 25.1 概述
    • 25.2 File构造方法
    • 25.3 File常见的成员方法
    • 25.4 File获取并遍历的方法
    • 25.5Test
      • 25.5.1 test01
      • 25.5.2 test02

二十五.File

(有异常直接抛出即可)

25.1 概述

  • File对象表示一个路径,可以是文件的路径,也可以是文件夹的路径
  • 这个路径可以存在,也可以不存在

25.2 File构造方法

方法说明
public File(String pathname)根据文件路径创建文件对象
public File(String parent, String child)根据父路径名字符串和子路径名字符串创建文件对象
public File(File parent, String child)根据父路径对应文件对象和子路径名字符串创建文件对象
import java.io.File;public class Test01 {public static void main(String[] args) {String str = "E:\\software\\ideak\\ideapro\\kwhcode\\a.txt";//1.根据字符串表示的路径,变成File对象File file1 = new File(str);System.out.println(str);//E:\software\ideak\ideapro\kwhcode\a.txt// 2. 根据父路径名字符串和子路径名字符串创建文件对象// 父路径:E:\software\ideak\ideapro\kwhcode// 子路径:a.txtString fu = "E:\\software\\ideak\\ideapro\\kwhcode";String zi = "a.txt";File file2 = new File(fu,zi);System.out.println(file2);//E:\software\ideak\ideapro\kwhcode\a.txt// 3.根据父路径对应文件对象和子路径名字符串创建文件对象// 即 将File表示的路径和字符串拼接File file3 = new File("E:\\software\\ideak\\ideapro\\kwhcode");String str1 = "a.txt";File file4 = new File(file3,str1);System.out.println(file4);//E:\software\ideak\ideapro\kwhcode\a.txt}
}

25.3 File常见的成员方法

方法名说明
public boolean isDirectory()判断此路径名表示的File是否为文件夹
public boolean isFile()判断此路径名表示的File是否为文件
public boolean exists()判断此路径名表示的File是否存在
public long length()返回文件的大小(字节数量)
public String getAbsolutePath()返回文件的绝对路径
public String getPath()返回定义文件时使用的路径
public String getName()返回文件的名称,带后缀
public long lastModified()返回文件的最后修改时间(时间毫秒值)
public boolean createNewFile()创建一个新的空的文件
public boolean mkdir()创建单级文件夹
public boolean mkdirs()创建多级文件夹
public boolean delete()删除文件、空文件夹

delete删除默认只删除文件和空文件,并且是直接删除不走回收站

import java.io.File;public class Test01 {public static void main(String[] args) {//1.对一个文件的路径进行判断File f1 = new File("E:\\a.txt");System.out.println(f1.isDirectory());//falseSystem.out.println(f1.isFile());//trueSystem.out.println(f1.exists());// trueSystem.out.println();//2.对一个文件夹的路径进行判断File f2 = new File("E:\\aaa");System.out.println(f2.isDirectory());//trueSystem.out.println(f2.isFile());//falseSystem.out.println(f2.exists());//true//3.对一个不存在的路径进行判断System.out.println();File f3 = new File("E:\\aaaa");System.out.println(f3.isFile());//trueSystem.out.println(f3.isDirectory());//trueSystem.out.println(f3.exists());//true// 4.length  返回文件的大小(字节数量) a.txt里有两字//无法获取文件夹的大小,如果我们要获取一个文件夹的大小,// 需要把这个文件夹里面所有的文件大小都累加在一起。System.out.println();File f4 = new File("E:\\a.txt");System.out.println(f4.length());//6File f5 = new File("E:\\aaa");System.out.println(f5.length());//0// 5.getAbsolutePath 返回文件的绝对路径File f6 = new File("E:\\a.txt");String pathF6 = f6.getAbsolutePath();System.out.println(pathF6); //E:\a.txtFile f7 = new File("code_java02\\kwh.txt");System.out.println(f7.getAbsolutePath());//E:\software\ideak\ideapro\kwhcode\code_java02\kwh.txt//6.getPath 返回定义文件时使用的路径File f8 = new File("E:\\a.txt");String pathF8 = f8.getPath();System.out.println(pathF8);//E:\a.txtFile f9 = new File("code_java02\\kwh.txt");String pathF9 = f9.getPath();System.out.println(pathF9);//code_java02\kwh.txt//7.getName 获取名字File f10 = new File("E:\\a.txt");System.out.println(f10.getName());//a.txtFile f11 = new File("E:\\aaa");System.out.println(f11.getName());//aaa}
}
import java.io.File;
import java.io.IOException;public class Test02 {public static void main(String[] args) throws IOException {//1.createNewFile 创建一个新的空的文件//细节1:如果当前路径表示的文件是不存在的,则创建成功,方法返回true//     如果当前路径表示的文件是存在的,则创建失败,方法返回false//细节2:如果父级路径是不存在的,那么方法会有异常IOException//细节3:createNewFile方法创建的一定是文件,//       如果路径中不包含后缀名,则创建一个没有后缀的文件File f1 = new File("E:\\aaa");boolean newFile = f1.createNewFile();System.out.println(newFile);//2.mkdir   make Directory,文件夹(目录)//细节1:windows当中路径是唯一的,如果当前路径已经存在,则创建失败,返回false//细节2:mkdir方法只能创建单级文件夹,无法创建多级文件夹。File f2 = new File("E:\\aaa\\aaa\\bbb\\ccc");boolean b = f2.mkdir();System.out.println(b);//false//3.mkdirs   创建多级文件夹//细节:既可以创建单级的,又可以创建多级的文件夹File f3 = new File("E:\\bbb\\ggg");boolean c = f3.mkdirs();System.out.println(c);//true//4.delete() 删除文件、空文件夹// 如果删除的是文件,则直接删除,不走回收站。// 如果删除的是空文件夹,则直接删除,不走回收站// 如果删除的是有内容的文件夹,则删除失败File f4 = new File("E:\\bbb\\ggg");boolean d = f4.delete();System.out.println(d);//ture}
}

25.4 File获取并遍历的方法

方法解释
public File[ ] listFiles()获取当前该路径下所有内容
import java.io.File;public class Test03 {public static void main(String[] args) {//1.创建File对象File f = new File("E:\\K");//2.listFiles方法//作用:获取K文件夹里面的所有内容,把所有的内容放到数组中返回File[] files = f.listFiles();for (File file : files) {System.out.println(file);}}
}

25.5Test

25.5.1 test01

import java.io.File;
import java.io.IOException;public class Test {public static void main(String[] args) throws IOException {//需求:在当前模块下的aaa文件夹中创建一个a.txt文件// 创建aaa文件夹的父级路径File f1 = new File("code_java02\\filedemo\\aaa");// 创建文件夹f1.mkdirs();// 拼接父级和子级路径File f2 = new File(f1,"a.txt");// 创建文件boolean newFile = f2.createNewFile();if (newFile){System.out.println("创建成功");}else {System.out.println("创建失败");}}
}

25.5.2 test02

import java.io.File;public class Test02 {public static void main(String[] args) {/*需求:定义一个方法找某一个文件夹中,是否有以mpv结尾的电影。(暂时不需要考虑子文件夹)*/// 指定查找路径File f1 = new File("code_java02\\filedemo\\aaa");// 调用方法boolean file = getFile(f1);System.out.println(file);}//定义方法public static boolean getFile(File file){// 获取文件里的所有内容File[] files = file.listFiles();// 遍历文件夹所有内容for (File file1 : files) {// 判断是否文件并且是否符合后缀名格式if (file1.isFile() && file1.getName().endsWith(".mpv")){return true;}}// 循环结束后没有找打返回falsereturn false;}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词