Java知识总结-File类
来源:互联网 发布:站长吧源码论坛 编辑:程序博客网 时间:2024/05/21 14:08
说明:File类方法较多,需要多联系加以熟悉
File类:将文件或目录封装成对象,并进行操作。
一,File类对象的创建格式:
import java.io.*;public class Test {public static void main(String[] args) throws IOException{//File(String pathname) File f1=new File("d:\\a\\s\\d");File f2=new File("d:\\22\\111.txt");//File(String parent, String child) File f3=new File("D:\\123","222.txt");//File(File parent, String childFile f4=new File(f1,"333.txt");System.out.println("f1:"+f1);System.out.println("f2:"+f2);System.out.println("f3:"+f3);System.out.println("f4:"+f4);}}
运行结果:
f1:d:\a\s\df2:d:\22\111.txtf3:D:\123\222.txtf4:d:\a\s\d\333.txt
二,File类常见方法:
创建:
----createNewFIle():
根据指定名称创建文件,若文件已存在则不创建且返回false,若创建成功则返回true。
----mkdir():
创建文件夹,只能创建一级文件夹。
----mkdirs():
创建文件夹,可以创建多级文件夹。
import java.io.*;public class Test {public static void main(String[] args) throws IOException{File f1=new File("123.txt");File f2=new File("D:\\abc");File f3=new File("D:\\aa\\bb\\cc\\dd");//创建文件System.out.println(f1.createNewFile());//创建一级文件夹System.out.println(f2.mkdir());//创建多级文件夹System.out.println(f3.mkdirs());}}
运行结果:
truetruetrue
删除:
----delete():
删除文件或目录:若成功删除返回true,若文件和目录不存在或删除失败则返回false。
import java.io.*;public class Test {public static void main(String[] args) throws IOException{File f1=new File("123.txt");File f2=new File("D:\\abc");File f3=new File("D:\\aa\\bb\\cc\\dd");//创建文件f1.createNewFile();//创建一级文件夹f2.mkdir();//创建多级文件夹f3.mkdirs();//删除文件System.out.println(f1.delete());//删除文件夹System.out.println(f2.delete());System.out.println(f3.delete());}}
运行结果:
truetruetrue
判断:
----exists():
判断文件或目录是否存在,存在则返回true。
----isFile():
判断FIle对象是否为文件。
----isDirectory();
判断是否为目录。
----isHidden():
判断是否为隐藏文件。
----isAbsolute():
判断是否是绝对路径。
import java.io.*;public class Test {public static void main(String[] args) throws IOException{File f=new File("d:\\123.txt");f.createNewFile();//文件或目录是否存在System.out.println(f.exists());//对象是否为文件System.out.println(f.isFile());//对象是否为文件夹System.out.println(f.isDirectory());//对象是否为隐藏文件System.out.println(f.isHidden());//对象是否为觉得路径System.out.println(f.isAbsolute());}}
获取:
----getName();
获取文件名或目录的最后一级文件夹名。如果文件为空,返回空字符串。
----getPath();
获取创建File对象时闯入构造函数的目录和文件的字符串形式。
----getAbsolutePath();
获取绝对路径名称.
----getParent()
获取父目录,如果创建这个File对象时没有指定父目录则返回null。
import java.io.*;public class Test {public static void main(String[] args) throws IOException{File f=new File("abc\\123.txt");//获取文件名或文件夹的最后一级System.out.println("getName()"+f.getName());//获取创建对象时路径名称System.out.println("getPath"+f.getPath());//获取觉得路径System.out.println("getAbsolutePath"+f.getAbsolutePath());//获取父目录System.out.println("getParent"+f.getParent());}}
运行结果:
123.txtabc\123.txtC:\Users\huaer\workspace\javaenhance\abc\123.txtabc
----length();
获取文件大小
----listRoots();
返回个硬盘分区名
----list():
获取该文件夹下文件名和文件夹名,以字符串数组形式返回。
注意:调用该方法时,FIle对象必须封装一个目录,且该目录要存在,如果封装的是文件则返回一个空数组。
import java.io.*;public class Test {public static void main(String[] args) throws IOException{File f=new File("c:\\");//获取该文件下的所有文件名和文件夹名String[] str=f.list();for(String s:str){System.out.println(s);}}}
----listFiles();
获取指定文件夹下的文件名和文件夹名,以File数组形式返回。
三,File应用:文件过滤
示例:过滤指定文件夹所有.java文件
import java.io.*;public class Test {public static void main(String[] args) throws IOException{File f=new File("D:\\360\\123\\321");String[] str=f.list(new FilenameFilter(){public boolean accept(File dir,String name){return name.endsWith(".java");}});for(String s:str){System.out.println(s);}}}
运行结果:
ArrayDemo.javaCar.javaCarTest.javaCollectionDemo.javaCollectionsDemo.javaDemo1.javaFanXing.javaHashSetDemo.javaIODemo.javaListDemo.javaListTest.javaLock.javaMapDemo.javaMapTest.javaStrBuffer.java
四,File应用:遍历目录
示例:遍历指定目录下文件和文件夹,包括所有子目录中的内容。
import java.io.*;public class Test {public static void main(String[] args) throws IOException{File f=new File("D:\\360\\123");show(f);}public static void show(File dir){//打印目录名System.out.println(dir);File[] files=dir.listFiles();for(File f:files){//如果是目录,就进行遍历if(f.isDirectory())//递归调用show(f);else//打印文件名System.out.println("\t"+f);}}}
五,File应用:删除文件夹
java删除文件夹时,文件夹需要为空。
import java.io.*;public class Test {public static void main(String[] args) throws IOException{File f=new File("D:\\360\\123\\333");deleteDemo(f);}public static void deleteDemo(File dir){File[] files=dir.listFiles();for(File f:files){//如果是目录,就进行遍历if(f.isDirectory())//递归调用deleteDemo(f);else//删除文件System.out.println(f.delete());}//删除文件夹中文件后删除文件夹System.out.println(dir.delete());}}
- Java知识总结-File类
- Java中 File类知识总结
- Java知识(File类)
- Java File类总结
- JAVA File类总结
- Java中File类总结
- java中File类总结
- java之file类总结
- 黑马程序员--(File知识总结)
- javaIO流、File文件知识总结
- Java File类总结和FileUtils类
- Java File类总结和FileUtils类
- Java File类总结和FileUtils类
- 黑马程序员:Java基础总结----类 File
- Java File类常见用法总结
- java中File类常用API总结
- Java关于File文件类操作总结
- Java IO知识点总结一(File类)
- 蓝桥杯-入门训练四道题
- [Java]Swing基础编程【1】基本组件的使用
- 杰森·斯坦森 Jason Michael Statham 2000-2012年 27部合集 435G
- xcode如何添加libCurl
- POJ 3210 Coins (很好的想法题)
- Java知识总结-File类
- saltstack
- EJB3.0之HelloWorld
- Tomcat 中响应头信息(Http Response Header) Content-Length 和 Transfer-Encoding 之种种
- 我特别好也很快乐
- LeetCode 142 — Linked List Cycle II(C++ Java Python)
- 网络子系统82_inet协议族-SOCK_RAW(三)
- cookie 和session 的区别详解
- 顺序结构的中和应用(讲解)