概要
Javaで「Pathオブジェクトに含まれるパスの各要素を取得する」の動作を確認してみました。以下のページを参考にしました。
実装
以下のファイルを作成しました。
JSample14_1.java
import java.nio.file.Path;
import java.nio.file.Paths;
class JSample14_1{
public static void main(String[] args){
Path p1 = Paths.get("C:/code/java/file/doc/report.txt");
Path p2 = Paths.get("D:/image/picture");
Path p3 = Paths.get("file/backup.bat");
Path p4 = Paths.get("profile.jpg");
Path p5 = Paths.get("C:/");
dispPathInfo(p1);
dispPathInfo(p2);
dispPathInfo(p3);
dispPathInfo(p4);
dispPathInfo(p5);
}
private static void dispPathInfo(Path p){
System.out.println("Path:" + p);
System.out.println("Name:" + p.getFileName());
System.out.println("Parent Directory:" + p.getParent());
System.out.println("Root Component:" + p.getRoot());
System.out.println("Name Count:" + p.getNameCount());
StringBuilder sb = new StringBuilder();
for (int i = 0 ; i < p.getNameCount() ; i++){
sb.append("[");
sb.append(p.getName(i));
sb.append("]");
}
System.out.println(sb);
System.out.println("-- --");
}
}
以下のコマンドを実行しました。
$ java JSample14_1
Path:C:/code/java/file/doc/report.txt
Name:report.txt
Parent Directory:C:/code/java/file/doc
Root Component:null
Name Count:6
[C:][code][java][file][doc][report.txt]
-- --
Path:D:/image/picture
Name:picture
Parent Directory:D:/image
Root Component:null
Name Count:3
[D:][image][picture]
-- --
Path:file/backup.bat
Name:backup.bat
Parent Directory:file
Root Component:null
Name Count:2
[file][backup.bat]
-- --
Path:profile.jpg
Name:profile.jpg
Parent Directory:null
Root Component:null
Name Count:1
[profile.jpg]
-- --
Path:C:
Name:C:
Parent Directory:null
Root Component:null
Name Count:1
[C:]
-- --
まとめ
何かの役に立てばと。