java パスからカンマを除外してパスを作成する
javaで、パスからカレントフォルダを意味する「.」や親フォルダを意味する「..」を除外してパスを作成する手順を記述してます。
環境
- OS windows11 home
- java 17.0.2
手順
パスからカンマを除外してパスを作成するには、「normalize」を使用します。
パス.normalize(開始位置0から,終了位置より1つプラス); 実際に、使用してみます。
import java.nio.file.Path;
public class App {
public static void main(String[] args) throws Exception {
// パスに変換
Path path = Path.of("C:/hoge0/foo1/java2/sample3.txt");
System.out.println(path.subpath(0,2)); // hoge0\foo1
System.out.println(path.subpath(1,3)); // foo1\java2
}
}取得されていることが確認できます。
範囲を超える
範囲を超える場合は「IllegalArgumentException」が発生します。
import java.nio.file.Path;
public class App {
public static void main(String[] args) throws Exception {
// パスに変換
Path path = Path.of("C:/hoge0/foo1/java2/sample3.txt");
System.out.println(path.subpath(1,5));
// Exception in thread "main" java.lang.IllegalArgumentException
}
}-
前の記事
Rubyのエラー『Errno::ECONNRESET: Connection reset by peer』の解決方法 2025.02.25
-
次の記事
Rubyのガベージコレクション:メモリ管理の舞台裏 2025.02.25
コメントを書く