Java核心API之File使用技巧

 时间:2024-11-16 23:09:04

1、CPU,内存和硬盘之间的关系在讲述File对象之前,简单的介绍一下CPU,内存和硬盘之间的关系,深入了解可以自行翻阅资料。CPU:中央处理器,处理指令和各种数据,通俗讲就像人类的心脏一样,处理数据流。内存:内存储器,暂时存放CPU要运算的数据,性能要求相对较高。硬盘:又称磁盘,可以永久的存储数据,但是运算速度较内存低。如果CPU需要处理数据,直接从硬盘读取,硬盘虽然大,但运算速度低,这样可以导致CPU使用率不高。所以,将CPU要处理的数据,从硬盘取出暂时放在内存上,CPU直接与内存交互,提高CPU使用率,也提高了电脑运行速率。当内存资源不如时,再从硬盘读取数据暂存放内存。

Java核心API之File使用技巧

2、File对象的介绍在Java程序开发过程中,有时需要访问磁盘数据或存储数据,比如,游戏的状态就是存储到磁盘上的,每一次登录需要访问数据显示游戏状态。下面都是干货。java.io包下有许多io(输入/输出)对象,其中包括java.io.File对象,该对象用于表示文件(目录),也就是说程序员可以通过File类在程序中操作硬盘上的文件和目录的。File对象有许多方法,不一一列举,主要介绍几个在项目中比较常用的方法。

Java核心API之File使用技巧

3、首疏扌熘创建File对象 /* * new File(String pathname) * 通过文件路径创建对象 */ @Test public void testNewFile烫喇霰嘴(){ File file = new File("demo"+File.separator+"test.txt"); System.out.println(file); } /* * new File() * 通过父文件对象和子文件路径创建对象 */ @Test public void testNewFile2(){ File parent = new File("demo"); File file = new File(parent,"test.txt"); System.out.println(file); }File类有许多构造方法,上面是其中两例,有感兴趣的朋友可以深入学习一下。注意:为了屏蔽平台(window,linux等)差异带来的影响,文件路径分隔符建议用File.separator。

Java核心API之File使用技巧

4、i衡痕贤伎sFile()判断当前File对象是否为文件 /* *boolean isFile() *判断当前当前File对象是否为文围泠惶底件 */ @Test public void testIsFile(){ File file = new File("demo"+File.separator+"test.txt"); boolean flag = file.isFile(); System.out.println(file+"是否文件:"+flag); File file2 = new File("demo"+File.separator+"test2.txt"); boolean flag2 = file2.isFile(); System.out.println(file2+"是否文件:"+flag2); }isFile()判断File对象是否是文件,有别于isDirectory()方法。

Java核心API之File使用技巧

5、isDirectory()方法判断当前File对象是否为目录 /* *boolean isDirectory() *判断当前当酡箔挝棍前File对象是否为目录 */ @Test public void testIsDirectory(){ File file = new File("demo"+File.separator+"a"); boolean flag = file.isDirectory(); System.out.println(file+"是否目录:"+flag); File file2 = new File("demo"+File.separator+"b"); boolean flag2 = file2.isDirectory(); System.out.println(file2+"是否目录:"+flag2); }一般结合isFile()方法可以判断File对象是文件还是目录,然后进行业务处理。

Java核心API之File使用技巧

6、exists()判断路径名表示的文件是否存在 /* * boolean exists() * 判断路径名表示的文件/目录是否存在 */ @Test public void testExists() throws IOException { File file = new File("demo"+File.separator+"test.txt"); if(!file.exists()){ file.createNewFile(); } System.out.println("创建文件完成"); }该方法常用于创建文件或目录时进行判断,如果文件或目录不存在则进行相应的业务处理。

Java核心API之File使用技巧

7、createNewFile()方法创建新文件 /* * boolean createNewFile() *方法用于创建新文件,创捋杏野卫建成功返回true,否则返回false */ @Test public void testCreateNewFile() throws IOException { File file = new File("demo"+File.separator+"test.txt"); boolean flag = false; if(!file.exists()){ flag = file.createNewFile(); if(flag){ System.out.println("创建文件成功"); }else{ System.out.println("创建文件失败"); } } }createNewFile()只负责创建文件,不创建目录,创建成功返回true,否则返回false。

Java核心API之File使用技巧

8、mkdir()创建路径名指定的目录 /* * boolean mkdir() * 用于创建文件路径名指定的目录 */ @Test public void testMkdir(){ File file = new File("demo"); boolean flag = file.mkdir(); System.out.println("目录是否创建成功:"+flag); }mkdir()与mkdirs()的区别,mkdir()创建一个目录,mkdirs()将路径名不存在的目录都创建出来

Java核心API之File使用技巧

9、mkdirs()用于创建路径名指定的所有目录 /* * boolean mkdirs() * 用于创建文件路径名指定的所有目录 */ @Test public void testMkdirs(){ File file = new File("demo" +File.separator+"a" +File.separator+"b"); boolean flag = file.mkdirs(); System.out.println("目录是否创建成功:"+flag); }注意:mkdir()创建失败时也有可能已经成功创建了一部分目录。

Java核心API之File使用技巧

10、delete()删除路径名表示的文件或目录 /* * boolean delete() * 用于删除路径名指定的文件或目录 */ @Test public void testDelete(){ File file = new File("demo"+File.separator+"test.txt"); file.delete(); }注意:当delete()方法删除目录时,只有目录为空的情况下才可以删除成功。

Java核心API之File使用技巧
Java核心API之File使用技巧

11、listsFiles()返回路径名指定的目录所有子项文件或目录 /* * File[] listFiles() * 返回抽象路径表示的目录所有子项,包括文件或目录 */ @Test public void testListFiles(){ File file = new File("demo"); File[] files = file.listFiles(); for(int i=0; i<files.length;i++){ System.out.println(files[i].getName()); } }

Java核心API之File使用技巧

12、FileFilter用于抽象路径名的过滤器 /* * FileFilter接口用于抽象路径名的过滤 */ @Test public void testFileFilter(){ File file = new File("demo"); File[] files = file.listFiles(new FileFilter(){ @Override public boolean accept(File fil){ return fil.getName().endsWith(".txt"); } }); for(int i=0; i<files.length;i++){ System.out.println(files[i].getName()); } }将此接口传递给File类中listFiles()方法,用于获取满足过滤条件的子项。

Java核心API之File使用技巧
  • Java核心API之FileOutputStream使用介绍
  • Java核心API之对象流的使用介绍
  • java 非web项目代码的查看技巧
  • Java核心API之字符流使用介绍
  • 图解什么是API, C++如何调用系统API?
  • 热门搜索
    科技节手抄报内容 成语故事手抄报图片 防火安全手抄报 善行历手抄报图片 法在我心中手抄报 做文明小学生手抄报 三年级手抄报端午节一等奖 如何制作电子手抄报 奥运会手抄报内容 元旦节手抄报一等奖