基础笔记5(file)

file 可以是目录和文件(只是是java程序与系统的文件进行一种关联)

File file1 = new File("f:/mytest", "test5.txt"); //根路径,和子路径,都可以是目录,子路径可以是文件。 File file2 = new File("f:/mytest/test2.txt"); File file3 = new File("f:/mytest"); File file4 = new File(file3, "test3.txt"); File file = new File("f:/mytest/1/2"); File file5 = new File("f:/mytest/a.txt"); // new File("f:/mytest/my.txt").createNewFile(); System.out.println(file1.createNewFile());//创建一个文件:文件路径必须存在才行(即目录已经存在) System.out.println(file.mkdir());//创建单个目录 System.out.println(file3.exists()); System.out.println(Arrays.toString(file3.listFiles()));//只是当前目录对象的下一级的文件和目录的具体对象 System.out.println(Arrays.toString(file3.list()));//下一级的目录和文件返回字符串(只是单独路径) System.out.println(file3.isHidden()); System.out.println(file.mkdirs());//创建多级目录

注意:在设置路径的时候,把冒号写错成分号了,结果被当成了相对路径。在项目当前路径中创建了 

输出:

false
false
true
[f:\mytest\1, f:\mytest\a.txt, f:\mytest\test5.txt]
[1, a.txt, test5.txt]
false
false

2.文件路径的定义几种格式:

System.out.println(File.pathSeparator);//路径分割符windows是冒号:
System.out.println(File.separator);//分解分割符,windons是反斜杠\
String path="E:\\a\\b";//反斜杠在java中表示转义所以需要两个
path="e:\\"+File.separator+"a";
path
="e:/a/b";//推荐这种简单

3.file不指定路径

//不指定路径文件默认是工程下:E:\workspace2\test\a.txt
System.out.println(new File("a.txt").getAbsolutePath());

 常见方法:获取

        File f = new File("a/a.txt");
        File f2 = new File("e:/f/a.txt");
        System.out.println("--------------");
        System.out.println(f.getName());
        System.out.println(f2.getName());
        System.out.println(f.getPath());
        System.out.println(f2.getPath());
        System.out.println(f.getAbsolutePath());
        System.out.println(f.getParent());
        System.out.println(f2.getParent());//如果只是file("a.txx")父路径将为null
File[] listFiles()//返回文件夹下的文件和目录数组对象数组
String[] list()//返回文件夹下的文件和目录字符串
输出: a.txt a.txt a\a.txt//相对路径的文件的路径 e:\f\a.txt///绝对路径的路径的路径 E:\workspace2\test\a\a.txt a//相对的父路径 e:\f//绝对的父路径

过滤文件名称:可以实现FileNameFilter的回调方法

String[] name = f.list(new FilenameFilter() {
@Override
public boolean accept(File dir, String name) {
// 文件下的dir 目录对象;name文件名称
return name.endsWith("java");
}
});

 

判断:

System.out.println(f.isAbsolute());//是否是绝对路径
System.out.println(f.isFile());//文件是true,文件夹或不存在的都是false;
System.out.println(new File("f:/mytest").isDirectory());//是否是目录
创建:删除文件:
f.createNewFile(); f.delete(); File.createTempFile(
"tes", ".temp",new File("F:/a"));//创建临时文件 f2.deleteOnExit();//程序退出文件删除。

  f.mkdir();//创建目录,父目录必须存在否则创建失败
  f.mkdirs();//创建多级目录

 

 File类的用法总结,及文件过滤器的介绍。

posted @ 2016-12-02 19:14  假程序猿  阅读(289)  评论(0编辑  收藏  举报