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 相关文章推荐
JavaScript 获得选中文本内容的方法
Feb 15 Javascript
JavaScript.The.Good.Parts阅读笔记(一)假值与===运算符
Nov 16 Javascript
基于jquery实现漂亮的动态信息提示效果
Aug 02 Javascript
JavaScript执行效率与性能提升方案
Dec 21 Javascript
有关于JS辅助函数inherit()的问题
Apr 07 Javascript
jQuery点缩略图弹出层显示大图片
Feb 13 Javascript
js实现图片无缝滚动
Dec 23 Javascript
AngularJS  $modal弹出框实例代码
Aug 24 Javascript
Angular.js实现多个checkbox只能选择一个的方法示例
Feb 24 Javascript
Angular中响应式表单的三种更新值方法详析
Aug 22 Javascript
vue-cli项目中使用公用的提示弹层tips或加载loading组件实例详解
May 28 Javascript
详解关闭令人抓狂的ESlint 语法检测配置方法
Oct 28 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
php 计划任务 检测用户连接状态
2012/03/29 PHP
php实现学生管理系统
2020/03/21 PHP
替换php字符串中的单引号为双引号的方法
2017/02/16 PHP
javascript 屏蔽鼠标键盘的几段代码
2008/01/02 Javascript
一段利用WSH获取登录时间的jscript代码
2008/05/11 Javascript
javascript prototype,executing,context,closure
2008/12/24 Javascript
新浪微博字数统计 textarea字数统计实现代码
2011/08/28 Javascript
jquery选择器原理介绍($()使用方法)
2014/03/25 Javascript
nodejs 提示‘xxx’ 不是内部或外部命令解决方法
2014/11/20 NodeJs
artDialog+plupload实现多文件上传
2016/07/19 Javascript
网站发布后Bootstrap框架引用woff字体无法正常显示的解决方法
2016/11/24 Javascript
详解vue.js的devtools安装
2017/05/26 Javascript
JS中的BOM应用
2018/02/02 Javascript
javascript动态创建对象的属性详解
2018/11/07 Javascript
jQuery实现的网站banner图片无缝轮播效果完整实例
2019/01/28 jQuery
Angular7创建项目、组件、服务以及服务的使用
2019/02/19 Javascript
electron实现静默打印的示例代码
2019/08/12 Javascript
javascript实现拖拽碰撞检测
2020/03/12 Javascript
matplotlib在python上绘制3D散点图实例详解
2017/12/09 Python
Python基于列表模拟堆栈和队列功能示例
2018/01/05 Python
python3+PyQt5实现自定义分数滑块部件
2018/04/24 Python
对python文件读写的缓冲行为详解
2019/02/13 Python
python实现对输入的密文加密
2019/03/20 Python
Django 实现对已存在的model进行更改
2020/03/28 Python
python文件路径操作方法总结
2020/12/21 Python
html5启动原生APP总结
2020/07/03 HTML / CSS
Marc Jacobs官方网站:美国奢侈品牌
2017/08/29 全球购物
全球游戏Keys和卡片市场:GamesDeal
2018/03/28 全球购物
意大利自行车商店:Cingolani Bike Shop
2019/09/03 全球购物
使用索引(Index)有哪些需要考虑的因素
2016/10/19 面试题
儿科护士实习自我鉴定
2013/10/17 职场文书
行政部工作岗位职责范本
2014/03/05 职场文书
企业诚信承诺书
2014/05/23 职场文书
焦裕禄纪念馆观后感
2015/06/09 职场文书
pytorch 如何使用amp进行混合精度训练
2021/05/24 Python
python3 字符串str和bytes相互转换
2022/03/23 Python