首页 > 代码库 > File类

File类

File类:唯一一个与文件本身有关的操作类。

下面3个构造方法可以用来生成File对象。

File(String directoryPath);

File(String directoryPath,String fileName);

File(File dirObj;String fileName);

例如:

File f1 = new File("/");

File f2 = new File("/","abc.txt");

File f3 = new File(f1,"abc.txt");

注:

directoryPath:文件的路径名

fileName:文件名

dirObj:指定目录的File对象

 分隔符问题

在Windows之中路径的分隔符使用"\",而在Linux中分隔符使用"/",而现在java程序如果想要让其具备可移植性,就必须考虑分隔符问题,所以File类提供了一个常量:public static final String separator。

File f1 = new File("c:"+File.separator+"abc.txt");

File常用方法

 

package cn.com.file;

import java.io.File;
import java.io.IOException;

/**
 * FileDemo
 *@author:hushaoyu
 *2017-2-15下午12:29:39
 *@描述:file类运用
 */
public class FileDemo {
	public static void main(String[] args) throws IOException {
		//根据构造方法创建File对象,路径E盘,文件名hello.txt
		File f1 = new File("E:"+File.separator+"HelloFile.txt");
		if (f1.exists()) {
			f1.delete();
		}else {
			f1.createNewFile();
		}
		//getName()方法,取得文件名
		System.out.println("文件名:"+f1.getName());
		//getPath()方法,取得文件名路径
		System.out.println("文件名路径"+f1.getPath());
		//getA()方法,取得文件名绝对路径
		System.out.println("文件名绝对路径"+f1.getAbsolutePath());
		//getParent(),取得父文件夹名
		System.out.println("父文件夹名"+f1.getParent());
		System.out.println(f1.exists()?"文件存在":"文件不存在");
		System.out.println(f1.canWrite()?"文件可写":"文件不可写");
		System.out.println(f1.canRead()?"文件可读":"文件不可读");
		System.out.println(f1.isDirectory()?"是":"不是"+"目录");
		System.out.println(f1.isFile()?"是文件":"不是文件");
		System.out.println(f1.isAbsolute()?"是绝对路径":"不是绝对路径");
		System.out.println("最后修改时间"+f1.lastModified());
		System.out.println("文件大小"+f1.length());
		System.out.println();
		
		/**结果输出:
		 文件名:HelloFile.txt
		文件名路径E:\HelloFile.txt
		文件名绝对路径E:\HelloFile.txt
		父文件夹名E:		文件存在
		文件可写
		文件可读
		不是目录
		是文件
		是绝对路径
		最后修改时间1487139283879
		文件大小0
		*/
		
	}
}

 创建目录文件

package cn.com.file;

import java.io.File;
import java.io.IOException;

import com.sun.org.apache.bcel.internal.generic.F2D;

/**
 * FileDemo
 *@author:hushaoyu
 *2017-2-15下午12:29:39
 *@描述:file类运用
 */
public class FileMakeDirs {
	public static void main(String[] args) throws IOException {
		//根据构造方法创建File对象,路径E盘,文件名hello.txt
		File f1 = new File("E:"+File.separator+"makedir"+File.separator+"makeFile.txt");
		if(!f1.getParentFile().exists()){ //父路径不存在
			f1.getParentFile().mkdir();  //创建目录
		}
			f1.createNewFile(); //创建文件
		System.out.println("目录文件名(类型File)"+f1.getParentFile());  //返回类型File
		System.out.println("目录文件名(类型String)"+f1.getParent());				   ////返回类型String
		System.out.println("文件名路径"+f1.getPath());
		
		
		/**输出结果:
		目录文件名(类型File)E:\makedir
		目录文件名(类型String)E:\makedir
		文件名路径E:\makedir\makeFile.txt
		*/
	}
}

  

  

 

File类