标签:
Java的IO通过java.io包下是类和接口来支持,在java.io包下主要包括输入,输出两种IO流,每种输入、输出流又可分为字节流和字符流两大类。其中字节流以字节为单位来处理输入、输出操作,而字符流以字符来处理来处理输入、输出操作。
File类可以使用文件路径字符串来创建File实例,该文件字符串可以是绝对路径,也可以是相对路径。在默认情况下,系统总是依据用户的工作路径来解释相对路径,这个路径由系统属性“userdir”指定。
一旦创建了File对象后,就可以调用File对象的方法来访问,File类提供了很多方法来操作文件和目录,常见方法如下:
1. 创建:Boolean createNewFile(); //在指定位置创建文件,如果该文件已经存在,则不创建,返回false。和输出流不一样,如果文件已经存在,会覆盖。 boolean mkdir(); //创建文件夹,只能创建一级文件夹 2. 删除:boolean delete(); //删除文件或目录。文件存在,返回true;文件不存在或者正在被执行,返回false。 void deleteOnExit(); //在程序退出时删除指定文件 3. 判断:boolean canExecute(); //是否是可执行文件 boolean exists(); //文件是否存在 boolean isFile(); //是否是文件 boolean isDirectory();//是否是文件夹 boolean isHidden(); //是否是隐藏文件 boolean isAbsolute(); //文件是否是绝对路径
下面是一段代码,以简单的几个方法类测试File类的功能
import java.io.*; public class FileTest { public static void main(String[] args) throws IOException { // 以当前路径来创建一个File对象 File file = new File("."); // 直接获取文件名,输出一点 System.out.println(file.getName()); // 获取相对路径的父路径可能出错,下面代码输出null System.out.println(file.getParent()); // 获取绝对路径 System.out.println(file.getAbsoluteFile()); // 获取上一级路径 System.out.println(file.getAbsoluteFile().getParent()); // 在当前路径下创建一个临时文件 File tmpFile = File.createTempFile("aaa", ".txt", file); // 指定当JVM退出时删除该文件 tmpFile.deleteOnExit(); // 以系统当前时间作为新文件名来创建新文件 File newFile = new File(System.currentTimeMillis() + ""); System.out.println("newFile对象是否存在:" + newFile.exists()); // 以指定newFile对象来创建一个文件 newFile.createNewFile(); // 以newFile对象来创建一个目录,因为newFile已经存在, // 所以下面方法返回false,即无法创建该目录 newFile.mkdir(); // 使用list()方法来列出当前路径下的所有文件和路径 String[] fileList = file.list(); System.out.println("====当前路径下所有文件和路径如下===="); for (String fileName : fileList) { System.out.println(fileName); } // listRoots()静态方法列出所有的磁盘根路径。 File[] roots = File.listRoots(); System.out.println("====系统所有根路径如下===="); for (File root : roots) { System.out.println(root); } } }
运行结果为:
. null D:\j2se1\testWorkspace\Test1234\. D:\j2se1\testWorkspace\Test1234 newFile对象是否存在:false ====当前路径下所有文件和路径如下==== .classpath .project .settings 1427952328698 aaa2416973888792423250.txt bin src ====系统所有根路径如下==== C:D:E:F:G:\
标签:
原文地址:http://www.cnblogs.com/leejuntongxue/p/4386695.html