文件的概念和类
经常听到相对路径和绝对路径的说法,而这俩具体有什么区别:
- 绝对路径---从根路径开始写,比如d:\data\image.jpg
-
相对路径---以当前目录为参照对文件路径进行写,比如 data\image.jpg (web中多用相对路径来引用)
file类
java.io包中提供了一系列用于对文件进行处理的接口和类,其中的File类可以对文件。目录及其 属性进行管理和访问,下面是一些File类的常用方法。
下面是示例代码,要注意windows下路径分隔使用\,而编程语言中、表示转义字符
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
package com.qst.chapter01; import java.io.File; import java.io.IOException; public class FileDemo { public static void main(String[] args) { // 以当前路径来创建一个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对象 File newFile = new File("C:\\file.txt"); System.out.println("newFile对象是否存在:" + newFile.exists()); try { // 以指定newFile对象来创建一个文件 newFile.createNewFile(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } // 以newFile对象来创建一个目录,因为newFile已经存在 // 所以下面方法返回false,即无法创建该目录 System.out.println("创建目录:"+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); } } } |