一、初见File类

java.io.File类代表系统中的文件(文件或目录)

常用构造方法

File(String pathname)

File(String parent, String child) 【参数都是字符串】

File(File parent, String child) 【parent必须为file对象】

常用属性-分隔符

File.separator 存储了当前系统的路径分隔符

注意

区别于Files类,该类是新IO流,用法不一样

二、基本操作方法

2.1访问File对象的属性

>

【可读否】boolean canRead()

【可写否】boolean canWrite()

【文件(不能判断文件夹)存在否】boolean exists()

【是否是文件夹】boolean isDirectory()

【是否是文件】boolean isFile()

【文件是否隐藏】boolean isHidden()

【最后一次修改时间】long lastModified()

【文件长度】long length() //以字节为单位【不能是文件夹】

【获取文件或文件夹名,仅最后一段】String getName()

【获取相对路径】String getPath()//(上级目录+最后一段的文件/文件夹名)

【获取绝对路径】String getAbsolutePath() //返回此File对象的绝对路径名

【获取绝对路径的文件】File getAbsoluteFile()//返回用绝对路径表示的File对象

【获取父目录路径】String getParent()//获取不包含(最后一段)文件/文件夹名的父路径

【获取父目录路径】File getParentFile()

2.2对文件的操作

public boolean createNewFile() //不存在时创建此文件对象所代表的空文件

【创建文件夹,只能为一层】boolean mkdir()

【创建文件夹,一层或多层】boolean mkdirs()

【删除】boolean delete()//删除文件(或文件夹)。如果是目录必须是空才能删除

【重命名文件】boolean renameTo(File dest)

【重命名文件】可以用于移动文件(同盘符或跨盘符)或文件夹(包含其中的内容,只能同盘符); 不能用它跨盘符移动文件夹

renameTo方法用于移动(重命名)文件夹时,参数是目标文件夹的File对象,不是目标父文件夹

如果有其file对象或者是流使用着这个文件 则不能修改成功

注意:只有把所有引用这个文件的流全部关闭后才能实现删除和重命名

2.3浏览目录中的文件和子目录

【获取文件夹下的文件名和目录名,返回值为数组】String[] list()

【采用了过滤器,其他同上】String[] list(FilenameFilter filter)

【同上】 File[] listFiles() //返回此目录中的文件和目录的File实例数组

【同上】File[] listFiles(FilenameFilter filter) //返回此目录中满足指定过滤器的文件和目录的File实例数组

**list()与listFiles()区别**
1,返回值类型不同,前者为String数组,后者为File对象数组
2,返回值内容不同:前者返回的是文件名,后者返回的是完整的路径

2.4FilenameFilter接口

1实现此接口的类实例可用于过滤文件名,仅限目标文件夹的直接子文件或子文件夹

2方法:boolean accept(File pathname) 

3注意:区别于接口 FileFilter:用于抽象路径名的过滤器

4实现FilenameFilter时,想保留的return true,想过滤掉的 return false
过滤器写法

三、练习

java中File类应用:遍历文件夹下所有文件

地址:http://blog.csdn.net/baidu_37107022/article/details/70652719

Java之File类的更多相关文章

  1. java.io.File类

    java.io.File类 1.凡是与输入.输出相关的类.接口等都定义在java.io包下 2.File是一个类.能够有构造器创建其对象.此对象相应着一个文件(.txt .avi .doc .ppt ...

  2. JAVA之File类创建对象构造函数传参数需要注意的几点

    java中File类用于创建一个文件对象. 首先看一段代码: 1. package MyText1; import java.io.File; public class MyText1 { publi ...

  3. java.io.File类操作

    一.java.io.File类 String path="E:/222/aaa";//路径 String path1="aaa.txt"; File file= ...

  4. Java文件File类学习总结

    java.io.File类 代表文件和目录,在开发中,读取文件.生成文件.删除文件.修改文件的属性都会用到该类. 常见构造方法: public File(String pathName){} 以pat ...

  5. java中File类的常用方法总结

    java中File类的常用方法 创建: createNewFile()在指定的路径创建一个空文件,成功返回true,如果已经存在就不创建,然后返回false. mkdir() 在指定的位置创建一个此抽 ...

  6. Java 中File类的createNewFile()与createTempFile(), delete和deleteOnExit区别

    1. Java 中File类的createNewFile()与createTempFile()的区别 最近,在看代码时看到了一个方法, File.createTempFile() ,由此联想到File ...

  7. 33.JAVA编程思想——JAVA IO File类

    33.JAVA编程思想--JAVA IO File类 RandomAccessFile用于包括了已知长度记录的文件.以便我们能用 seek()从一条记录移至还有一条:然后读取或改动那些记录. 各记录的 ...

  8. Java 之 File类(文件操作)

    一.概述 java.io.File 类是文件和目录路径名册抽象表示,主要用于文件和目录的创建.查找和删除等操作. File类是一个与系统无关的类,任何的操作系统都可以使用这个类中的方法. 路径问题: ...

  9. Java中File类的基本用法

    File类的基本用法 java.io.File类:代表文件和目录.在开发中,读取文件.生成文件.删除文件.修改文件的属性时经常会用到此类. File类的常用构造方法:public File(Strin ...

随机推荐

  1. Python自学笔记——matplotlib极坐标.md

    一.极坐标 在平面内取一个定点O,叫极点,引一条射线Ox,叫做极轴,再选定一个长度单位和角度的正方向(通常取逆时针方向).对于平面内任何一点M,用ρ表示线段OM的长度(有时也用r表示),θ表示从Ox到 ...

  2. (转)使用string.Format需要注意的一个性能问题

    今天,我在写C#代码时,突然发现一个最熟悉的陌生人 —— string.Format.在写C#代码的日子里,与它朝夕相伴,却没有真正去了解它.只知道在字符串比较多时,用它比用加号进行字符串连接效率更高 ...

  3. fuse on TDH4.8

    一.安装依赖包 yum install autoconf.noarch yum install automake yum install libtool* yum install m4 yum ins ...

  4. python——面向对象进阶

    类的成员 类的成员可以分为三大类:字段.方法和属性 注:所有成员中,只有普通字段的内容保存对象中,即:根据此类创建了多少对象,在内存中就有多少个普通字段.而其他的成员,则都是保存在类中,即:无论对象的 ...

  5. Unity UI 基础【译】

    https://unity3d.com/cn/learn/tutorials/topics/best-practices/fundamentals-unity-ui?playlist=30089 理解 ...

  6. MVC框架中,遇到 [程序集清单定义与程序集引用不匹配]怎么办?

    项目里有一个WinForm程序,它需要使用一套第三方控件.而我的机器上存有这套控件的两种版本(一个是源码版,一个是演示版).结果经常出现“程序集清单定义与程序集引用不匹配的问题”的异常.最要命的是有时 ...

  7. bzoj4514 [Sdoi2016]数字配对

    Description 有 n 种数字,第 i 种数字是 ai.有 bi 个,权值是 ci. 若两个数字 ai.aj 满足,ai 是 aj 的倍数,且 ai/aj 是一个质数, 那么这两个数字可以配对 ...

  8. C++STL中map容器的说明和使用技巧(杂谈)

    1.map简介 map是一类关联式容器.它的特点是增加和删除节点对迭代器的影响很小,除了那个操作节点,对其他的节点都没有什么影响.对于迭代器来说,可以修改实值,而不能修改key. 2.map的功能 自 ...

  9. openfire+smack 实现即时通讯基本框架

    smack jar下载地址 http://www.igniterealtime.org/downloads/download-landing.jsp?file=smack/smack_3_2_2.zi ...

  10. 结束C#2的讲解:最后的一些特性

    分部类型 可以在多个源文件中为一个类型编写代码.特别适合用于部分代码是自动生成,而其他部分的代码为手动类型. 多个源代码文件组成的类型为分部类型 #region 7-1演示分部类型的混合声明 part ...