Trong Java, có hai phương pháp chính để kiểm tra xem tệp hoặc thư mục có tồn tại hay không. Đây là:
1 - Files.exists
từ gói NIO
2 - File.exists
từ gói IO kế thừa
Hãy xem một số ví dụ từ mỗi gói.
Kiểm tra xem tệp có tồn tại không (Java NIO)
Mã sử dụng Path
và Path
từ gói Java NIO để kiểm tra xem tệp có tồn tại hay không:
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class CheckFileExist {
public static void main(String[] args) {
Path path = Paths.get("/path/to/file/app.log");
if (Files.exists(path)) {
if (Files.isRegularFile(path)) {
System.out.println("App log file exists");
}
} else {
System.out.println("App log file does not exists");
}
}
}
Kiểm tra xem Thư mục có tồn tại không (Java NIO)
Tương tự như vậy, nếu chúng ta muốn kiểm tra xem một thư mục có tồn tại trong Java hay không bằng cách sử dụng gói NIO:
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class CheckDirectoryExist {
public static void main(String[] args) {
Path path = Paths.get("/path/to/logs/");
if (Files.exists(path)) {
if (Files.isDirectory(path)) {
System.out.println("Logs directory exists");
}
} else {
System.out.println("Logs directory does not exist");
}
}
}
Kiểm tra xem tệp có tồn tại không (Java Legacy IO)
Nếu bạn không sử dụng gói Java NIO, bạn có thể sử dụng gói Java IO cũ:
import java.io.File;
public class CheckFileExists {
public static void main(String[] args) {
File file = new File("/path/to/file/app.log");
if(file.exists()) {
System.out.println("App log file exists");
} else {
System.out.println("App log file does not exist");
}
}
}
Kiểm tra xem Thư mục có tồn tại không (Java Legacy IO)
Tương tự, để kiểm tra thư mục, chúng ta có thể sử dụng:
import java.io.File;
public class CheckFileExists {
public static void main(String[] args) {
File file = new File("/path/to/logs/");
if(file.isDirectory()) {
System.out.println("Logs directory exists");
} else {
System.out.println("Logs directory does not exist");
}
}
}