Java之File类

来源:互联网 发布:mac fonts文件夹 编辑:程序博客网 时间:2024/06/05 17:14

File类:存储在java.io包里
这里要明确一点,当new出来一个File的时候,不是真的new出来了一个文件,而是在内存中new出来了一个文件名,只有用对应的方法创建新文件的时候,文件才能被创建
(一)
1)File类的常见构造方法:
a. public File(String pathname)
以pathname为路径创建File对象,如果pathname是相对路径,则默认的当前路径在系统属性user.dir中存储
b. public File(String parent,String child)
以parent为父路径,child为子路径创建File对象
2)File的静态属性String separator存储了当前系统的路径分隔符

注:这里说明一下,windows系统下和linux系统下,路径分隔符是不同的,windows系统的分隔符是反斜杠”\”,而linux系统下的分隔符是正斜杠”/”,设置了separator这样一个静态属性是为了保证Java程序在不同的系统下都可以执行
(二)
1)通过File对象可以访问文件的属性
public boolean canRead() //文件可读
public boolean canWrite() //文件可写
public boolean exist() //文件存在
public boolean isDirectory() //是目录?
public boolean isFile() //是文件?
public boolean isHidden() //被隐藏?
public long lastModified() //返回文件最后一次的修改时间
public long length() //返回文件的长度
public String getName() //返回文件名
public String getPath() //返回文件路径
2)通过File对象创建空文件或目录(在该对象所指的文件或目录不存在的情况下)
public boolean createNewFile() throws IOException //创建新文件
public boolean delete() //删除文件
public boolean mkdir() //创建路径
public boolean mkdirs() //创建一系列路径

我们用一个程序来说明一下File类:

import java.io.*;        //引用包public class TestFile {    public static void main(String[] args) {        String separator = File.separator;        //System.out.println(separator);        String filename = "MyFile.txt";        String path = "mypath1" + separator + "mypath2";        File f = new File(path,filename);        if(f.exists()) {            System.out.println("文件名:" + f.getAbsolutePath());            //输出文件的绝对路径            System.out.println("文件大小:" + f.length());        } else {            f.getParentFile().mkdirs();            /*            f.getParentFile()是求其父路径            mkdirs是建立一系列路径            */                try {                f.createNewFile();            }   catch(IOException e) {                e.printStackTrace();            }            //防止抛出IOException        }    }}
0 0
原创粉丝点击