Java教程-Java File类

Java File类
File类是文件和目录路径名的抽象表示。路径名可以是绝对路径或相对路径。
File类具有多个用于处理目录和文件的方法,例如创建新目录或文件、删除和重命名目录或文件、列出目录内容等。
字段
Modifier | Type | Field | Description |
---|---|---|---|
static | String | pathSeparator | 它是系统相关的路径分隔符,为方便起见表示为字符串 |
static | char | pathSeparatorChar | 它是系统相关的路径分隔符。 |
static | String | separator | 它是系统相关的默认名称分隔符,为方便起见表示为字符串。 |
static | char | separatorChar | 它是系统相关的默认名称分隔符。 |
构造函数
Constructor | Description |
---|---|
File(File parent, String child) | 它从父抽象路径名和子路径名字符串创建一个新的 File 实例。 |
File(String pathname) | 它通过将给定的路径名字符串转换为抽象路径名来创建一个新的 File 实例。 |
File(String parent, String child) | 它从父路径名字符串和子路径名字符串创建一个新的 File 实例。 |
File(URI uri) | 它通过将给定的 file: URI 转换为抽象路径名来创建一个新的 File 实例。 |
常用方法
Modifier and Type | Method | Description |
---|---|---|
static File | createTempFile(String prefix, String suffix) | 它在默认临时文件目录中创建一个空文件,使用给定的前缀和后缀生成其名称。 |
boolean | createNewFile() | 当且仅当具有此名称的文件尚不存在时,它才会自动创建一个以此抽象路径名命名的新空文件。 |
boolean | canWrite() | 它测试应用程序是否可以修改此抽象路径名.String[] 表示的文件 |
boolean | canExecute() | 它测试应用程序是否可以执行此抽象路径名表示的文件。 |
boolean | canRead() | 它测试应用程序是否可以读取此抽象路径名表示的文件。 |
boolean | isAbsolute() | 它测试这个抽象路径名是否是绝对的。 |
boolean | isDirectory() | 它测试这个抽象路径名表示的文件是否是一个目录。 |
boolean | isFile() | 它测试此抽象路径名表示的文件是否为普通文件。 |
String | getName() | 它返回此抽象路径名表示的文件或目录的名称。 |
String | getParent() | 它返回此抽象路径名的父目录的路径名字符串,如果此路径名未指定父目录,则返回 null。 |
Path | toPath() | 它返回一个从这个抽象路径构造的 java.nio.file.Path 对象。 |
URI | toURI() | 它构造一个文件:表示此抽象路径名的 URI。 |
File[] | listFiles() | 它返回一个抽象路径名数组,表示此抽象路径名表示的目录中的文件 |
long | getFreeSpace() | 它返回以此抽象路径名命名的分区中未分配的字节数。 |
String[] | list(FilenameFilter filter) | 它返回一个字符串数组,命名此抽象路径名表示的目录中满足指定过滤器的文件和目录。 |
boolean | mkdir() | 它创建以此抽象路径名命名的目录。 |
Java File示例1
import java.io.*;
public class FileDemo {
public static void main(String[] args) {
try {
File file = new File("javaFile123.txt");
if (file.createNewFile()) {
System.out.println("New File is created!");
} else {
System.out.println("File already exists.");
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
输出:
New File is created!
Java File示例2
import java.io.*;
public class FileDemo2 {
public static void main(String[] args) {
String path = "";
boolean bool = false;
try {
// createing new files
File file = new File("testFile1.txt");
file.createNewFile();
System.out.println(file);
// createing new canonical from file object
File file2 = file.getCanonicalFile();
// returns true if the file exists
System.out.println(file2);
bool = file2.exists();
// returns absolute pathname
path = file2.getAbsolutePath();
System.out.println(bool);
// if file exists
if (bool) {
// prints
System.out.print(path + " Exists? " + bool);
}
} catch (Exception e) {
// if any error occurs
e.printStackTrace();
}
}
}
输出:
testFile1.txt
/home/Work/Project/File/testFile1.txt
true
/home/Work/Project/File/testFile1.txt Exists? true
Java File示例3
import java.io.*;
public class FileExample {
public static void main(String[] args) {
File f=new File("/Users/sonoojaiswal/Documents");
String filenames[]=f.list();
for(String filename:filenames){
System.out.println(filename);
}
}
}
输出:
"info.properties"
"info.properties".rtf
.DS_Store
.localized
Alok news
apache-tomcat-9.0.0.M19
apache-tomcat-9.0.0.M19.tar
bestreturn_org.rtf
BIODATA.pages
BIODATA.pdf
BIODATA.png
struts2jars.zip
workspace
Java File示例4
import java.io.*;
public class FileExample {
public static void main(String[] args) {
File dir=new File("/Users/sonoojaiswal/Documents");
File files[]=dir.listFiles();
for(File file:files){
System.out.println(file.getName()+" Can Write: "+file.canWrite()+"
Is Hidden: "+file.isHidden()+" Length: "+file.length()+" bytes");
}
}
}
输出:
"info.properties" Can Write: true Is Hidden: false Length: 15 bytes
"info.properties".rtf Can Write: true Is Hidden: false Length: 385 bytes
.DS_Store Can Write: true Is Hidden: true Length: 36868 bytes
.localized Can Write: true Is Hidden: true Length: 0 bytes
Alok news Can Write: true Is Hidden: false Length: 850 bytes
apache-tomcat-9.0.0.M19 Can Write: true Is Hidden: false Length: 476 bytes
apache-tomcat-9.0.0.M19.tar Can Write: true Is Hidden: false Length: 13711360 bytes
bestreturn_org.rtf Can Write: true Is Hidden: false Length: 389 bytes
BIODATA.pages Can Write: true Is Hidden: false Length: 707985 bytes
BIODATA.pdf Can Write: true Is Hidden: false Length: 69681 bytes
BIODATA.png Can Write: true Is Hidden: false Length: 282125 bytes
workspace Can Write: true Is Hidden: false Length: 1972 bytes