一、初见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. vim粘贴代码问题

    vim粘贴代码问题 vim 在使用xshell进行vim操作的时候,经常会直接粘贴一些外部的代码,然后粘贴上之后会出现逐行缩进的情况,之前一直没有去找为啥,并且逐行的给他弄回去. 转自:https:/ ...

  2. canvas与svg区别

    canvas与svg区别 和SVG比起来有两个弱点,一个是画布里的内容是独立的,不能当成html元素:二是CANVAS是属于位图格式,而SVG是矢量图,可以平滑放大. HTML5的canvas画出来的 ...

  3. CF #edu 11 C. Hard Process

    题目链接:http://codeforces.com/problemset/problem/660/C 大意是给一个01数组,至多可以将k个0变为1,问最后数组中最长能有多少个连续的1,并输出. 问题 ...

  4. Spring+SpringMVC+MyBatis+easyUI整合优化篇(十二)数据层优化-explain关键字及慢sql优化

    本文提要 从编码角度来优化数据层的话,我首先会去查一下项目中运行的sql语句,定位到瓶颈是否出现在这里,首先去优化sql语句,而慢sql就是其中的主要优化对象,对于慢sql,顾名思义就是花费较多执行时 ...

  5. python自动化测试应用-番外篇--接口测试1

    篇1                 book-python-auto-test-番外篇--接口测试1 --lamecho辣么丑 1.1概要 大家好! 我是lamecho(辣么丑),至今<安卓a ...

  6. bzoj2884 albus就是要第一个出场

    Description 已知一个长度为n的正整数序列A(下标从1开始), 令 S = { x | 1 <= x <= n }, S 的幂集2^S定义为S 所有子集构成的集合.定义映射 f ...

  7. Ubuntu14.04双网卡主备配置

    近日有个需求,交换机有两台,做了堆叠,服务器双网卡,每个分别连到一台交换机上.这样就需要将服务器的网卡做成主备模式,以增加安全性,使得当其中一个交换机不通的时候网卡能够自动切换. 整体配置不难,网上也 ...

  8. linux文件系统下的特殊权限

    SUID, SGID, Sticky 1 权限 r, w, x user, group, other 2 安全上下文 前提:进程有属主和属组:文件有属主和属组: (1) 任何一个可执行程序文件能不能启 ...

  9. Gulp和webpack的区别,是一种工具吗?

    疑问:gulp和webpack 什么关系,是一种东西吗?可以只用gulp,不用webpack吗 或者反过来? 它们的区别和概念 ------------------------------------ ...

  10. 转:简单的Mysql主从复制设置

    步骤如下: 1.主从服务器分别作以下操作:  1.1.版本一致  1.2.初始化表,并在后台启动mysql  1.3.修改root的密码 2.修改主服务器master: #vim /etc/my.cn ...