I'd like to use isDirectory() method (java.io.File class). I created a simple test code to try out this method, however I always get a 'cannot find symbol' error.
My code:
import java.io.File;
public class MyUtils {
public static void main(String[] args) {
String path = "/this/is/not/a/valid/path";
boolean ValidPath = path.isDirectory();
System.out.println(ValidPath);
}
}
CodePudding user response:
Because your path is a String object. You may instantiate a File object with the path String:
boolean ValidPath = new File(path).isDirectory();
CodePudding user response:
This happens because path is an instance type String and isDirectory is not a method available in the String class. To work with files or directories, you have to use the appropriate classes.
Your code should look like this :
import java.nio.file.Files;
import java.nio.file.Paths;
public class MyUtils {
public static void main(String[] args) {
String path = "/this/is/not/a/valid/path";
boolean isValidPath = Files.isDirectory(Paths.get(path));
System.out.println(isValidPath);
}
}
The ValidPath should be renamed to isValidPath.
As you want to check the validity of your path, you ca use the method exists like this :
boolean isValidPath = Files.exists(Paths.get(path));
