A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 我的最优解 中级黑马   /  2015-6-19 18:50  /  416 人查看  /  2 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

java的File类

File类是java中表示文件和目录名的抽象表示形式。File类可以实现文件的创建,删除,重命名,获取路径,创建时间等等,是唯一一个与文件本身有关的操作。

主要使用方法:

File类的对象主要用来获取文件本身的一些信息,如文件所在的目录、文件长度、文件读写权限等,不涉及对文件的读写操作。

  一、File类的构造方法有:

  File(String filename);   //filename为文件名,该文件与当前应用程序在同一目录中

  File(String directoryPath,String filename);  //directoryPath是文件路径

  File(file f,String filename);  //f是指定成目录的一个文件

  二、文件属性

  1.public String getName();  //获取文件的名字

  2.public boolean canRead();  //判断文件是否可读

  3.public boolean canWrite();  //判断文件是否可写

  4.public boolean exits();   //判断文件是否存在

  5.public ling length();    //获取文件长度

  6.public String getAbsolutePath();  //获取文件的绝对路径

  7.public String getParent();  //获取文件的父目录

  8.public boolean isFile();  //判断文件是否是一个正常文件而不是目录

  9.public boolean isDirectory();  //判断文件是否一个目录

         10.public boolean isHidden();    //判断文件是否隐藏文件

11.public long lastModified();   //文件最后修改的时间

12.public boolean createNewFile()throws IOException  //创建文件

13.public boolean delete();  //删除文件

14.public String[]list();   //列出文件夹中的文件名

15.public File[] listFile();   //列出文件夹的所有文件实例

16.public boolean mkdir();  //创建文件夹

17.public boolean renameTo(File dest);  //文件重命名(可以移动文件)

  三、目录

  1.创建目录

  public boolean mkdir();  //创建目录

  2.列出目录中的文件

    如果File对象是一个目录,那么该对象可以调用下述方法列出该目录下的文件和子目录:

  public String[] list();  //用字符串形式返回

  public File[] listFiles();  //用File对象形式返回

  列出指定类型的文件:

  public String[] list(FilenameFilter obj);  //字符串形式目录下指定类型的所有文件

  public File[] listFiles(FilenameFilter obj);  //用File对象形式返回目录下指定类型的所有文件

    其中,FilenameFilter是一个接口,该接口有一个方法:

public boolean accept(File dir,String name);  //当向list方法传递一个实现该接口的对象时,dir调用list方法在列出文件时,将调用accept方法检查该文件name是否符合accept方法指定的目录和文件名字要求。

示例一:

File构造函数

package com.itheima;



import java.io.File;



public class file {



public static void main(String[] args) {

// TODO 自动生成的方法存根

File f1 =new File("c:\\111\\1.txt");

        File f2 =new File("c:\\111","2.txt");

        File f3 =new File("c:"+File.separator+"111");//separator 跨平台分隔符

        File f4 =new File(f3,"3.txt");

        System.out.println(f1);



   

}



}



示例二:

列出磁盘下的文件和文件夹
package com.itheima;



import java.io.File;



public class file {



public static void main(String[] args) {

// TODO 自动生成的方法存根

File[] files =File.listRoots();

        for(File file:files){

            System.out.println(file);

            if(file.length()>0){

                String[] filenames =file.list();

                for(String filename:filenames){

                    System.out.println(filename);

                }

            }

        }

   

}



}

示例三:

文件过滤

package com.itheima;



import java.io.File;

import java.io.FilenameFilter;



public class file {



public static void main(String[] args) {

// TODO 自动生成的方法存根

File file = new File("E:\\我的音乐");



String[] filenames = file.list(new FilenameFilter() {

// 过滤文件

public boolean accept(File file, String filename) {

return filename.endsWith(".mp3");

}

});

for (String filename : filenames) {

System.out.println(filename);

}



}



}

2 个回复

倒序浏览
File类总结的很好
回复 使用道具 举报
jiejianle  
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马