package com.logicbig.example.files;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
public class IsRegularFileExample {
public static void main(String... args) throws IOException {
Path tempFile = Files.createTempFile("test-file", ".txt");
boolean regularFile = Files.isRegularFile(tempFile);
System.out.println("file: " + tempFile);
System.out.println("exits: " + Files.exists(tempFile));
System.out.println("regular: " + regularFile);
}
}
Output
file: C:\Users\Joe\AppData\Local\Temp\test-file12861011115215866627.txt
exits: true
regular: true
package com.logicbig.example.files;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
public class IsRegularFileExample2 {
public static void main(String... args) throws IOException {
Path tempFile = Files.createTempDirectory("test-dir");
boolean regularFile = Files.isRegularFile(tempFile);
System.out.println("file: " + tempFile);
System.out.println("exits: " + Files.exists(tempFile));
System.out.println("regular: " + regularFile);
}
}
Output
file: C:\Users\Joe\AppData\Local\Temp\test-dir5244852189374751685
exits: true
regular: false
Following must run with admin privileges
package com.logicbig.example.files;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.LinkOption;
import java.nio.file.Path;
public class IsRegularFileExample3 {
public static void main(String... args) throws IOException {
Path dir = Files.createTempDirectory("test-dir");
Path path = Files.createTempFile(dir, "test-file", ".txt");
//this will fail if not run with admin privileges
Path symPath = Files.createSymbolicLink(dir.resolve("sym-" + path.getFileName()), path);
boolean regularFile = Files.isRegularFile(symPath);
System.out.println("symPath regular: " + regularFile);
regularFile = Files.isRegularFile(symPath, LinkOption.NOFOLLOW_LINKS);
System.out.println("symPath with NOFOLLOW_LINKS option regular: " + regularFile);
}
}
Output
symPath regular: true
symPath with NOFOLLOW_LINKS option regular: false