java パス同士を結合する
javaで、パス同士を結合する手順を記述してます。
環境
- OS windows11 home
- java 17.0.2
手順
パス同士を結合するには、「resolve」を使用します。
パス.resolve(結合するパス);
実際に、使用してみます。
import java.nio.file.Path;
public class App {
public static void main(String[] args) throws Exception {
// パスに変換
Path path1 = Path.of("c:/hoge/");
Path path2 = Path.of("/java/sample3.txt");
System.out.println(path1.resolve(path2)); // c:\java\sample3.txt
}
}
取得されていることが確認できます。
絶対パスを結合
絶対パスを結合するパスと指定した場合は、絶対パスが優先されます。
import java.nio.file.Path;
public class App {
public static void main(String[] args) throws Exception {
// パスに変換
Path path1 = Path.of("c:/hoge/");
Path path2 = Path.of("/java/");
// path2 に path1 を結合
System.out.println(path2.resolve(path1)); // c:\hoge
}
}
両方とも絶対パスの場合でも同じです。
import java.nio.file.Path;
public class App {
public static void main(String[] args) throws Exception {
// パスに変換
Path path1 = Path.of("c:/hoge/");
Path path2 = Path.of("c:/java/");
// path2 に path1 を結合
System.out.println(path2.resolve(path1)); // c:\hoge
}
}
結合元のパスにファイル名が含まれていると、ファイル名がない結合するパスが優先されます。
import java.nio.file.Path;
public class App {
public static void main(String[] args) throws Exception {
// パスに変換
Path path1 = Path.of("foo/hoge/sample.txt");
Path path2 = Path.of("/java/");
System.out.println(path1.resolve(path2)); // \java
}
}
-
前の記事
GAS スプレッドシートのセルの水平方向の配置を取得する 2024.01.30
-
次の記事
htmxでjsonデータをliタグで表示する 2024.01.30
コメントを書く