java类库中的File类使用
2016-03-16 10:29
363 查看
File(文件)类这个名字有一定的误导性(个人觉得太大了!!!);我们可能会认为它指代的是文件,实际上却并非如此。它技能代表一个特定的文件的名称,又能代表一个目录下的一组文件的名称。如果它指的是一个文件集,我们就可以对此集合调用list()方法,这个方法会返回一个字符数据 String []。FilePath(文件路径)对这个类来说是更好的名字。(此段截取自Think in java 第四版)
1、访问文件名相关方法;
String getName(): 返回此File对象所表示的文件名或者路径名(如果是路径,则返回最后一级子路径名,比如上面例子中的 ".")。
String getPath(): 返回此File对象所对应的路径名。
File getAbsoluteFile(): 返回此File对象的绝对路径
String getAbsolutePath: 返回此File对象的绝对路径名
String getParent(): 返回此File对象对应目录(最后一级子目录)的父目录名
boolean reanameTo(File newName): 重命名返回此File对象对应的文件或者目录
2、文件检测相关方法;
boolean exists();
boolean canWrite();
boolean isFile();
boolean isDirectory();
boolean isAbsolute();在UNIX/Linux系统上,绝对路径开头是一条斜线‘/’,在Windows系统上,绝对路径开头是盘符,例如:E:\
3、获取常规文件信息;
long lastModified(): 文件最后的修改时间
long length(): 文件内容的长度 (The length, in bytes, of the file denoted by this abstract pathname, or
4、文件操作相关方法;
boolean createNewFile():
boolean delete():
static FilecreateTempFile(String prefix, String suffix): 在默认的临时文件目录中创建一个临时的空文件,使用给定的前缀、系统生成的随机数个给定的后缀来作为文件名
static FilecreateTempFile(String prefix, String suffix, File directory): 和上类似,指定了目录而已
void deleteOnExit(): 钩子~~~java虚拟机退出的时候,删除File对象对应的文件和目录,想象下就知道了~~~多形象
5、目录操作相关方法
boolean mkdir():
String []list(): 列出File对象所有子文件名和路径名
File[] listFiles(): 列出File对象所有子文件名和路径名
static File() listRoots():列出系统所有的根路径!
直接运行以下程序:
1、访问文件名相关方法;
String getName(): 返回此File对象所表示的文件名或者路径名(如果是路径,则返回最后一级子路径名,比如上面例子中的 ".")。
String getPath(): 返回此File对象所对应的路径名。
File getAbsoluteFile(): 返回此File对象的绝对路径
String getAbsolutePath: 返回此File对象的绝对路径名
String getParent(): 返回此File对象对应目录(最后一级子目录)的父目录名
boolean reanameTo(File newName): 重命名返回此File对象对应的文件或者目录
2、文件检测相关方法;
boolean exists();
boolean canWrite();
boolean isFile();
boolean isDirectory();
boolean isAbsolute();在UNIX/Linux系统上,绝对路径开头是一条斜线‘/’,在Windows系统上,绝对路径开头是盘符,例如:E:\
3、获取常规文件信息;
long lastModified(): 文件最后的修改时间
long length(): 文件内容的长度 (The length, in bytes, of the file denoted by this abstract pathname, or
0Lif the file does not exist)
4、文件操作相关方法;
boolean createNewFile():
boolean delete():
static FilecreateTempFile(String prefix, String suffix): 在默认的临时文件目录中创建一个临时的空文件,使用给定的前缀、系统生成的随机数个给定的后缀来作为文件名
static FilecreateTempFile(String prefix, String suffix, File directory): 和上类似,指定了目录而已
void deleteOnExit(): 钩子~~~java虚拟机退出的时候,删除File对象对应的文件和目录,想象下就知道了~~~多形象
5、目录操作相关方法
boolean mkdir():
String []list(): 列出File对象所有子文件名和路径名
File[] listFiles(): 列出File对象所有子文件名和路径名
static File() listRoots():列出系统所有的根路径!
直接运行以下程序:
<pre name="code" class="java">package com.neo.FileAndPathTest; import java.io.File; public class PathTest { public static void main(String[] args) { File filetest1 = new File("."); String name = filetest1.getName(); String AbsolutePath = filetest1.getAbsolutePath(); String nullParentPath = filetest1.getParent(); String rightParentPath = filetest1.getAbsoluteFile().getParent(); filetest1.length(); //File parentFile = currentDir.getParentFile(); System.out.println("该File对象指向的文件或者文件集(目录)是否为绝对路径:"+filetest1.isAbsolute()); System.out.println("该File对象指向的文件或者文件集(目录)的名字"+name); //返回值为空 System.out.println("该File对象指向的文件或者文件集(目录)的上层路径获取结果"+nullParentPath); System.out.println("该File对象指向的文件或者文件集(目录)的绝对路径"+AbsolutePath); System.out.println("该File对象指向的文件或者文件集(目录)上层路径的正确获取方式结果:"+rightParentPath); System.out.println("该File对象指向的文件或者文件集(目录)对应的路径名"+filetest1.getPath()); //java.lang.NullPointerException //System.out.println(parentFile.getName()); System.out.println("============================================================="); //java中反斜线'\'表示转义字符,window下路径表示为:E:\Local,此处则要用\\表示路径分隔符 File fileTest2 = new File("E:\\Local"); if(fileTest2.isAbsolute()){ System.out.println(fileTest2.getParent()); } System.out.println("该File对象指向的文件或者文件集(目录)是否存在:"+fileTest2.exists()); System.out.println("该File对象指向的是否为文件:"+fileTest2.isFile()); System.out.println("该File对象指向的是否为文件集(目录):"+fileTest2.isDirectory()); if(fileTest2.isDirectory()){ //两种方式都可以,建议用第二种方式,foreach循环 /*String []files = fileTest2.list(); for(int i=0; i<files.length; i++){ System.out.println(files[i]); }*/ for(String item : fileTest2.list()){ System.out.println(item); } } File [] root = File.listRoots(); for (File item : root){ System.out.println(item); } } }
相关文章推荐
- JAVA Web防止表单重复提交实例
- java 学习 todoList
- JDK location无法更改处理方法
- Eclipse搭建protobuf开发环境
- 从Eclipse到Android Studio:Android项目如何进行迁移
- springmvc处理表单数据到后台
- Java关键字——transient
- Spring配置中的<context:annotation-config/>
- JDBC借助Spring进行增删改查的操作--大大简化了程序
- spring中自定义注解(annotation)与获取注解
- Learning Spring-Cloud – Infrastructure and Configuration
- spring国际化
- Java web 基础
- hihoCoder题目AC #1014 : Trie树 Java
- 148. Sort List | Java最短代码实现
- Spring连接数据库整合-实例
- SpringMVC——实现拦截器
- Ajax跨域(jsonp) 调用JAVA后台
- 【java基础】Java内部类详解
- Monitor the changes in EOImpl.java side