Java File类的常用方法总结


Posted in Javascript onMarch 18, 2015

Java File类的功能非常强大,利用Java基本上可以对文件进行所有的操作。本文将对Java File文件操作类进行详细地分析,并将File类中的常用方法进行简单介绍,有需要的Java开发者可以看一下。

构造函数

public class FileDemo {

     public static void main(String[] args){

         //构造函数File(String pathname)

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

         //File(String parent,String child)

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

         //File(File parent,String child)

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

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

         System.out.println(f1);//c:\abc\1.txt
     }
 }

 

创建方法

1.boolean createNewFile() 不存在返回true 存在返回false
2.boolean mkdir() 创建目录
3.boolean mkdirs() 创建多级目录

删除方法

1.boolean delete()
2.boolean deleteOnExit() 文件使用完成后删除

import java.io.File;

import java.io.IOException;

public class FileDemo2 {

    public static void main(String[] args){

        File f =new File("d:\\1.txt");

        try {

            System.out.println(f.createNewFile());//当文件存在时返回false

            System.out.println(f.delete());//当文件不存在时返回false

        } catch (IOException e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        }

    }

}

判断方法

1.boolean canExecute()判断文件是否可执行
2.boolean canRead()判断文件是否可读
3.boolean canWrite() 判断文件是否可写
4.boolean exists() 判断文件是否存在
5.boolean isDirectory()
6.boolean isFile()
7.boolean isHidden()
8.boolean isAbsolute()判断是否是绝对路径 文件不存在也能判断

获取方法

1.String getName()
2.String getPath()
3.String getAbsolutePath()
4.String getParent()//如果没有父目录返回null
5.long lastModified()//获取最后一次修改的时间
6.long length()
7.boolean renameTo(File f)
8.File[] liseRoots()//获取机器盘符
9.String[] list()
10.String[] list(FilenameFilter filter)

列出磁盘下的文件和文件夹

public class FileDemo3 {

     public static void main(String[] args){

         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);

                 }

             }

         }

     }
 }

文件过滤
import java.io.File;

 import java.io.FilenameFilter;

 public class FileDemo4 {

     public static void main(String[] args){

         File[] files =File.listRoots();

         for(File file:files){

             System.out.println(file);

             if(file.length()>0){

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

                     //file 过滤目录 name 文件名

                     public boolean accept(File file,String filename){

                         return filename.endsWith(".mp3");

                     }

                 });

                 for(String filename:filenames){

                     System.out.println(filename);

                 }

             }

         }

     }
 }

File[]  listFiles()
File[] listFiles(FilenameFilter filter)

利用递归列出全部文件
public class FileDemo5 {

    public static void main(String[] args){

        File f =new File("e:\\音??);

        showDir(f);

    }

    public static void showDir(File dir){

        System.out.println(dir);

        File[] files =dir.listFiles();

        for(File file:files){

            if(file.isDirectory())

                showDir(file);

            else 

                System.out.println(file);

        }

    }

}

移动文件

找出d盘下所有的 .java 文件,拷贝至 c:\jad 目录下,并将所有文件的类型由.java 修改为.jad 。

public class Test5 {

    public static void main(String[] args){

        File f1 = new File("d:\\");

        moveFile(f1);

    }

public static void moveFile(File dir){

    File[] files=dir.listFiles();

    for(File file:files){

        if(file.isDirectory())

            moveFile(file);

        else{

            if(file.getName().endsWith(".java"))

                file.renameTo(new File("c:\\jad\\"+

            file.getName().substring(0,file.getName().lastIndexOf('.'))+".jad"));

            }

        }

    }

}

以上就是Java File类的全部属性和方法,我们只需简单地调用上面的方法即可完成对指定文件的操作,希望本文对你有所帮助。
Javascript 相关文章推荐
SeaJS入门教程系列之使用SeaJS(二)
Mar 03 Javascript
基于css3新属性transform及原生js实现鼠标拖动3d立方体旋转
Jun 12 Javascript
JavaScript跨域调用基于JSON的RESTful API
Jul 09 Javascript
原生Aajax 和jQuery Ajax 写法个人总结
Mar 24 jQuery
jQuery遍历节点方法汇总(推荐)
May 13 jQuery
一个可复用的vue分页组件
May 15 Javascript
JavaScript异步加载问题总结
Feb 17 Javascript
Node.js文件编码格式的转换的方法
Apr 27 Javascript
JavaScript中常用的简洁高级技巧总结
Mar 10 Javascript
vue实现数字滚动效果
Jun 29 Javascript
Javascript执行上下文顺序的深入讲解
Nov 04 Javascript
js实现有趣的倒计时效果
Jan 19 Javascript
JavaScript中的依赖注入详解
Mar 18 #Javascript
使用js实现的简单拖拽效果
Mar 18 #Javascript
使用纯javascript实现放大镜效果
Mar 18 #Javascript
jQuery创建自定义的选择器用以选择高度大于100的超链接实例
Mar 18 #Javascript
javascript中的Base64、UTF8编码与解码详解
Mar 18 #Javascript
jQuery实现按键盘方向键翻页特效
Mar 18 #Javascript
javascript操作Cookie(设置、读取、删除)方法详解
Mar 18 #Javascript
You might like
在Windows下编译适用于PHP 5.2.12及5.2.13的eAccelerator.dll(附下载)
2010/05/04 PHP
PHP连接局域网MYSQL数据库的简单实例
2013/08/26 PHP
php中分页及SqlHelper类用法实例
2017/01/12 PHP
PHP单例模式定义与使用实例详解
2017/02/06 PHP
PHP支付宝当面付2.0代码
2018/12/21 PHP
jquery 操作单选框,复选框,下拉列表实现代码
2009/10/27 Javascript
基于jquery的checkbox下拉框插件代码
2010/06/25 Javascript
JS控制文本框textarea输入字数限制的方法
2013/06/17 Javascript
node.js中Socket.IO的进阶使用技巧
2014/11/04 Javascript
jQuery的图片轮播插件PgwSlideshow使用详解
2016/08/11 Javascript
JQuery手速测试小游戏实现思路详解
2016/09/20 Javascript
JS控制div跳转到指定的位置的几种解决方案总结
2016/11/05 Javascript
微信小程序如何获取用户手机号
2018/01/26 Javascript
通过JavaScript下载文件到本地的方法(单文件)
2019/03/17 Javascript
vscode中eslint插件的配置(prettier配置无效)
2019/09/10 Javascript
微信小程序如何获取用户头像和昵称
2019/09/23 Javascript
JavaScript快速调试的两个技巧
2020/11/04 Javascript
[56:47]Ti4 循环赛第三日 iG vs Liquid
2014/07/12 DOTA
Python中operator模块的操作符使用示例总结
2016/06/28 Python
详解Python中的type和object
2018/08/15 Python
Python爬虫使用浏览器cookies:browsercookie过程解析
2019/10/22 Python
使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示
2020/05/16 Python
Canvas 文字碰撞检测并抽稀的方法
2019/05/27 HTML / CSS
保护环境的建议书
2014/03/12 职场文书
教学改革实施方案
2014/03/31 职场文书
市场部经理岗位职责
2014/04/10 职场文书
比赛口号大全
2014/06/10 职场文书
促销活动总结模板
2014/07/01 职场文书
十佳标兵事迹材料
2014/08/18 职场文书
优秀团员事迹材料2000字
2014/08/20 职场文书
停车位租赁协议书
2014/09/24 职场文书
关于群众路线的心得体会
2014/11/05 职场文书
学生检讨书范文
2015/01/27 职场文书
Python批量将csv文件转化成xml文件的实例
2021/05/10 Python
纯CSS3实现div按照顺序出入效果
2021/07/15 HTML / CSS
Go中使用gjson来操作JSON数据的实现
2022/08/14 Golang