0
0

More than 1 year has passed since last update.

Javaで「Pathオブジェクトに含まれるパスの各要素を取得する」の動作を確認してみた

Posted at

概要

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:]
-- --

まとめ

何かの役に立てばと。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0