Java 7でString
オブジェクトから Java.nio.file.Path
オブジェクトを作成する方法を教えてください。
すなわち.
String textPath = "c:/dir1/dir2/dir3";
Path path = ?;
ここで?
は、textPath
を使用する欠けているコードです。
Javadocから.. http://docs.Oracle.com/javase/tutorial/essential/io/pathOps.html
Path p1 = Paths.get("/tmp/foo");
と同じです
Path p4 = FileSystems.getDefault().getPath("/tmp/foo");
Path p3 = Paths.get(URI.create("file:///Users/joe/FileTest.Java"));
Path p5 = Paths.get(System.getProperty("user.home"),"logs", "foo.log");
Windowsでは、ファイル C:\ joe\logs\foo.logを作成します(ユーザーの自宅をC:\ joeとします)
Unixでは、ファイル /u/joe/logs/foo.logを作成します(ユーザーの自宅を/ u/joeとします)
可能であれば、path要素から直接Path
を作成することをお勧めします。
Path path = Paths.get("C:", "dir1", "dir2", "dir3");
// if needed
String textPath = path.toString(); // "C:\\dir1\\dir2\\dir3"
質問がJava 7に関するものであっても、Java 11以降では、これをすぐに実行できる静的メソッドがPath
クラスにあります。
すべてのパスを1つの文字列にまとめます。
Path.of("/tmp/foo");
パスはいくつかの文字列に分割されています。
Path.of("/tmp","foo");