File类
来源:互联网 发布:高圆圆闺蜜zoe的淘宝店 编辑:程序博客网 时间:2024/06/06 09:37
1. File类的概述
文件和路径名的抽象表现形式
2. 构造方法
public File(String pathname):给定一个文件的抽象路径表现形式,开发中常用
public File(String parent,Stringchild):参数一:指定当前文件夹的名称,参数二:该文件夹下的文件
public File(File parent,String child):参数一:file对象,参数二:表示具体文件
3. File类里面常用的一些方法
public booleancreateNewFile():创建文件,如果该文件存在了,就不用创建了,执行该方法会抛出一个异常IOException
publicboolean mkdir():创建文件夹
publicboolean mkdir():创建多个文件夹
publicBoolean delete():删除此抽象路径名表示的文件或目录
delete方法只能删除空目录,如果该目录有内容(文件或文件夹,那么只能先删除内容再删除最外层)
如果在写文件或文件夹的时候没有写盘符,那么默认在当前项目下创建
publicboolean renameTo(File dest):重命名
注意:如果两个文件的抽象路径名称一致,只是改名
如果两个文件的抽象路径名称不一致,不仅改名,还要剪切
import java.io.File;
public class FileDemo2 {
publicstatic void main(String[] args) {
Filefile=new File("高圆圆.jpg");
Filefile2=new File("e:\\夏红.jpg");
System.out.println(file.renameTo(file2));
}
}
代码:public class FileDemo {public static void main(String[] args) throws IOException {//创建File对象File file=new File("e:\\demo");System.out.println("mkdir:"+file.mkdir());File file2=new File(file,"java.txt");System.out.println("creatNewFile:"+file2.createNewFile());File file3=new File("e:\\aaa\\bbb\\ccc");System.out.println("mkdirs:"+file3.mkdirs());//File file4=new File("e:\\dd\\c.txt");//System.out.println(file4.createNewFile());//java.io.IOException: 系统找不到指定的路径。File file5=new File("d.txt");System.out.println("creatNewFile:"+file5.createNewFile());//System.out.println("delete:"+file5.delete());File file6=new File("aaa\\bbb\\ccc");System.out.println("mkdirs:"+file6.mkdirs());System.out.println("delete:"+file6.delete());}}
4 File类中的判断类
publicboolean isDirector():判断该文件是否是一个文件夹:重点
publicboolean isFile():判断文件是否是一个标准文件
publicboolean isHidden():判断文件是否是一个隐藏文件
publicboolean canRead():判断文件是可读
publicboolean canWrite():判断文件是否可写
代码:
public class FileDemo3 {public static void main(String[] args) {File file=new File("d.txt");System.out.println("isDetactor:"+file.isDirectory());System.out.println("isFile:"+file.isFile());System.out.println("isHidden:"+file.isHidden());System.out.println("canRead:"+file.canRead());System.out.println("canWrite:"+file.canRead());}}
5. File类中的高级功能
publicString[] list():获取当前盘符下所有文件或文件夹的字符串名称数组
pubic File [] listFiles():获取当前盘符下所有文件或文件夹的File名称数组,常用、
代码:
public class FileDemo {public static void main(String[] args) {//获取e盘下根目录的所有的文件以及文件夹的名称//将e盘根目录封装成一个File对象File file = new File("e:\\");//public String[] list():获取当前盘符下的所有的文件以及文件夹的字符串数组String[] strArray = file.list();//增强for遍历for(String s : strArray){System.out.println(s);}System.out.println("----------------------");File[] fileArray = file.listFiles() ;for(File f : fileArray){System.out.println(f.getName());}}}
6. File类中的获取功能:基本获取功能
publicString getAbsolutePath():获取当前文件的绝对路径
publicString getPath():相对路径
publicString getName():获取文件或者目录的名称
publiclong length():获取文件内容的长度
publiclong lastModified():最后一次修改这个文件的时间(时间毫秒值)
代码:
public class FileDemo {public static void main(String[] args) {//将a.txt文件封装成一个file对象File file = new File("a.txt") ;//public String getAbsolutePath():D:\Java\JavaEE\code\day16\a.txtSystem.out.println("getAbsolutePath:"+file.getAbsolutePath());//public String getPath()System.out.println("getPath:"+file.getPath());//a.txt//public String getName():获取文件或者目录的名称System.out.println("getName:"+file.getName());//public long length():获取文件内容的长度System.out.println("length:"+file.length());//public long lastModified()System.out.println("lastModified:"+file.lastModified());//1502948146592 时间毫秒值//Date日期对象 ---String :日期的文本表现形式//创建日期对象Date d = new Date(1502948146592L) ;//创建SimpleDateFormat对象SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss") ;//格式化String s = sdf.format(d) ;System.out.println(s);//2017-08-17 13:35:46}}
7.练习
判断d盘目录下是否有”.bin”文件,有就输出
方法一代码:/* * 要求:判断e盘目录下是否有".day"文件夹,有就输出 * 分析: * 1)将d盘封装成一个file对象 * 2)获取当前盘符下的文件或文件夹的File数组名称 * 3)遍历数组,获取到每一个文件或文件夹 * 4)判断是否是文件夹 * 5)如果是文件夹,判断文件夹是否以".bin"为后缀名 */public class FileTest {public static void main(String[] args) {//创建File对象File file=new File("e:\\");File[] array=file.listFiles();for(File f:array){if(f.isDirectory()){if(f.getName().endsWith(".day")){System.out.println(f.getName());}}}}}方法二代码:获取的时候就已经满足条件了,简单,方便代码:文件名称过滤器:public String[]list(Filenamefilter filter):返回一个字符串数组public File[] listFiles(Filefilter filter):返回抽象路径名称数组import java.io.File;import java.io.FilenameFilter;public class FileTest2 {public static void main(String[] args) {//将d盘中的文件和文件夹封装到File对象中File file=new File("e:\\");//返回一个字符串数组名称,然后匿名内部类String[] array=file.list(new FilenameFilter(){@Overridepublic boolean accept(File dir, String name) {// TODO Auto-generated method stubreturn new File(dir,name).isDirectory()&&name.endsWith(".day");}});for(String s:array){System.out.println(s);}}}
- 【File】File类基础
- File类 ;File.Create(),File.Delete(), File.Copy(), File.Replace()
- File 类
- File 类
- File 类
- File 类
- File类
- File 类
- FILE 类
- File类
- FILE类
- File类
- File类
- File类
- File类
- File类
- File类
- File类
- Java中线程安全与线程非安全ArrayList,Vector 和 HashMap,Hashtable 和StringBuffer,StringBuilder
- 原生js旋转木马
- Chapter 1
- Android InstantRun原理分析
- 关于Expression表达式树的拼接
- File类
- linux 压缩解压打包工具大集合
- c++实现0-1背包问题完整源码(动态规划实现)
- Swift中桥接头文件建立(Swift 与 OC 的混编)
- JavaScript执行顺序详解
- 2178: GJJ来签到
- 直流电机驱动器
- 网络爬虫_网页登录(苏宁 有验证码)—基于HtmlUnit
- PAT 乙级 1010