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 相关文章推荐
JQuery 构建客户/服务分离的链接模型中Table分页代码效率初探
Jan 22 Javascript
用Mootools获得操作索引的两种方法分享
Dec 12 Javascript
解析Jquery取得iframe中元素的几种方法
Jul 04 Javascript
js实现目录定位正文示例
Nov 14 Javascript
jQuery中attr()和prop()在修改checked属性时的区别
Jul 18 Javascript
jQuery中nextUntil()方法用法实例
Jan 07 Javascript
jQuery聚合函数实例
May 21 Javascript
jQuery下拉框的简单应用
Jun 24 Javascript
H5用户注册表单页 注册模态框!
Sep 17 Javascript
IScroll那些事_当内容不足时下拉刷新的解决方法
Jul 18 Javascript
jQuery实现参数自定义的文字跑马灯效果
Aug 15 jQuery
jQuery操作attr、prop、val()/text()/html()、class属性
May 23 jQuery
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
PHP与javascript实现变量交互的示例代码
2013/07/23 PHP
培养自己的php编码规范
2015/09/28 PHP
PHP框架实现WebSocket在线聊天通讯系统
2019/11/21 PHP
出现“不能执行已释放的Script代码”错误的原因及解决办法
2007/08/29 Javascript
防止动态加载JavaScript引起的内存泄漏问题
2009/10/08 Javascript
基于jquery的图片幻灯展示源码
2012/07/15 Javascript
jQuery渐变发光导航菜单的实例代码
2013/03/27 Javascript
js添加select下默认的option的value和text的方法
2014/10/19 Javascript
《JavaScript DOM 编程艺术》读书笔记之JavaScript 图片库
2015/01/09 Javascript
使用AngularJS实现表单向导的方法
2015/06/19 Javascript
JavaScript File分段上传
2016/03/10 Javascript
动态加载js、css的简单实现代码
2016/05/26 Javascript
使用javaScript实现鼠标拖拽事件
2020/04/03 Javascript
详解Vue路由History mode模式中页面无法渲染的原因及解决
2017/09/28 Javascript
JS 实现缓存算法的示例(FIFO/LRU)
2018/03/20 Javascript
Vue.js的复用组件开发流程完整记录
2018/11/29 Javascript
angularjs模态框的使用代码实例
2019/12/20 Javascript
vue 判断两个时间插件结束时间必选大于开始时间的代码
2020/11/04 Javascript
Python实现测试磁盘性能的方法
2015/03/12 Python
Python简单的制作图片验证码实例
2017/05/31 Python
Python下使用Scrapy爬取网页内容的实例
2018/05/21 Python
Python实现的绘制三维双螺旋线图形功能示例
2018/06/23 Python
Python中super函数用法实例分析
2019/03/18 Python
win10下opencv-python特定版本手动安装与pip自动安装教程
2020/03/05 Python
翻转数列python实现,求前n项和,并能输出整个数列的案例
2020/05/03 Python
python如何操作mysql
2020/08/17 Python
HTML5进阶段内联标签汇总(小篇)
2016/07/13 HTML / CSS
初中优秀教师事迹材料
2014/08/18 职场文书
五一劳动节演讲稿
2014/09/12 职场文书
房地产公司工程部经理岗位职责
2015/04/09 职场文书
2015社区爱国卫生工作总结
2015/04/21 职场文书
农村党支部承诺书
2015/04/30 职场文书
运动会宣传稿50字
2015/07/23 职场文书
导游词之南京栖霞山
2019/10/18 职场文书
CSS3实现的3D隧道效果
2021/04/27 HTML / CSS
Golang 结构体数据集合
2022/04/22 Golang