Java で Path 関数を使用してパス操作を行う方法

WBOY
リリース: 2023-06-26 15:12:21
オリジナル
3937 人が閲覧しました

Java の Path 関数は、ファイル パスとディレクトリ パスを処理するために使用される API です。これにより、ファイルやディレクトリの場所を簡単かつ直感的に管理したり、それらに対してさまざまな操作を実行したりできます。この記事では、Java で Path 関数を使用してパス操作を実行する方法を詳しく説明します。

  1. Path オブジェクトの作成

まず、処理する必要があるファイルまたはディレクトリのパスを表す Path オブジェクトを作成する必要があります。次の方法で Path オブジェクトを作成できます。

  • Paths.get() メソッドを使用します。このメソッドは 1 つ以上の文字列パラメータを受け入れ、指定された絶対値または絶対値を表すことができる Path オブジェクトを返します。パスの相対パス。

たとえば、次のコードを使用して、現在の作業ディレクトリを表す Path オブジェクトを作成できます。

Path path = Paths.get(".");
ログイン後にコピー
  • Path.of() メソッドの使用: このメソッドまた、1 つまたは複数の文字列パラメーターを受け入れ、指定されたパスの絶対パスまたは相対パスを表すことができる Path オブジェクトを返します。

たとえば、次のコードを使用して、現在の作業ディレクトリを表す Path オブジェクトを作成できます。

Path path = Path.of(".");
ログイン後にコピー
  • File.toPath() メソッドを使用します。メソッドは File オブジェクトを受け取り、ファイルのパスを表す Path オブジェクトを返します。

たとえば、「myfile.txt」という名前のファイルがある場合、次のコードを使用して、ファイルのパスを表す Path オブジェクトを作成できます。

パス情報の取得
  1. Path オブジェクトには、パス情報を取得するためのメソッドが多数用意されています。一般的に使用されるメソッドをいくつか示します。

    toString(): パスの文字列表現を返します。
  • File file = new File("myfile.txt");
    Path path = file.toPath();
    ログイン後にコピー

  • getFileName(): ファイル名またはディレクトリ名を表す Path オブジェクトを返します。
  • String strPath = path.toString();
    System.out.println("路径:" + strPath);
    ログイン後にコピー

  • getParent(): 親ディレクトリを表す Path オブジェクトを返します。
  • Path fileName = path.getFileName();
    System.out.println("文件名:" + fileName.toString());
    ログイン後にコピー

  • getNameCount(): パス内の要素の数を返します。
  • Path parentDir = path.getParent();
    System.out.println("父目录:" + parentDir.toString());
    ログイン後にコピー

  • getName(int index): 指定されたインデックスにあるパス要素の Path オブジェクトを返します。
  • int count = path.getNameCount();
    System.out.println("元素数量:" + count);
    ログイン後にコピー

パスの接続
  1. 2 つのパスを接続する必要がある場合は、resolve() メソッドを使用できます。このメソッドは、指定されたパスと現在のパスを連結した結果である新しい Path オブジェクトを返します。

たとえば、次のコードを使用して、現在のディレクトリの相対パスを別のディレクトリの相対パスと連結できます。

Path element = path.getName(0);
System.out.println("第一个元素:" + element.toString());
ログイン後にコピー

パスの解決
  1. 冗長な部分の削除、パス形式の正規化など、パスを処理する必要がある場合は、normalize() メソッドを使用できます。このメソッドは、正規化されたパスの結果を表す新しい Path オブジェクトを返します。

たとえば、次のコードを使用して、現在のパスの正規化された表現を取得できます。

Path currentDir = Paths.get(".");
Path subdir = Paths.get("subdir");
Path result = currentDir.resolve(subdir);
System.out.println(result.toString()); // 输出:.subdir
ログイン後にコピー

パスを判断する
  1. Path オブジェクトまた、パスが存在するかどうか、ファイルであるかディレクトリであるかなどを判断するための多数の判定メソッドも提供します。一般的に使用されるメソッドの一部を次に示します。

    exists(): パスが存在するかどうかを確認します。
  • Path path = Paths.get("C:/folder/.././file.txt");
    Path normalizedPath = path.normalize();
    System.out.println(normalizedPath.toString()); // 输出:C:ile.txt
    ログイン後にコピー

  • isAbsolute(): パスが絶対パスかどうかを確認します。
  • boolean exists = Files.exists(path);
    System.out.println("路径是否存在:" + exists);
    ログイン後にコピー

  • isDirectory(): パスがディレクトリであるかどうかを確認します。
  • boolean isAbs = path.isAbsolute();
    System.out.println("路径是否为绝对路径:" + isAbs);
    ログイン後にコピー

  • is RegularFile(): パスが通常のファイルかどうかを確認します。
  • boolean isDir = Files.isDirectory(path);
    System.out.println("路径是否为目录:" + isDir);
    ログイン後にコピー

  • isReadable(): パスが読み取り可能かどうかを確認します。
  • boolean isFile = Files.isRegularFile(path);
    System.out.println("路径是否为文件:" + isFile);
    ログイン後にコピー

  • isWritable(): パスが書き込み可能かどうかを確認します。
  • boolean isReadable = Files.isReadable(path);
    System.out.println("路径是否可读:" + isReadable);
    ログイン後にコピー

ファイルまたはディレクトリの作成および削除
  1. Path オブジェクトには、ファイルまたはディレクトリを作成および削除するためのメソッドも提供されます。一般的に使用されるメソッドの一部を次に示します。

    createDirectories(): 存在しないすべてのディレクトリを作成します。
  • boolean isWritable = Files.isWritable(path);
    System.out.println("路径是否可写:" + isWritable);
    ログイン後にコピー

  • createFile(): ファイルを作成します。
  • Path newDir = Paths.get("newDir/subDir");
    boolean success = Files.createDirectories(newDir);
    System.out.println("目录是否创建成功:" + success);
    ログイン後にコピー

  • delete(): ファイルまたは空のディレクトリを削除します。パスがディレクトリを表す場合、削除するには空にする必要があります。
  • Path newFile = Paths.get("newfile.txt");
    boolean success = Files.createFile(newFile);
    System.out.println("文件是否创建成功:" + success);
    ログイン後にコピー

  • deleteIfExists(): ファイルまたは空のディレクトリが存在する場合は、ファイルまたはディレクトリを削除します。
  • boolean success = Files.deleteIfExists(newFile);
    System.out.println("是否删除成功:" + success);
    ログイン後にコピー

ファイルまたはディレクトリの移動とコピー
  1. Path オブジェクトには、ファイルまたはディレクトリを移動またはコピーするためのメソッドも提供されます。一般的に使用されるメソッドの一部を次に示します。

    move(): ファイルまたはディレクトリを移動します。操作が成功すると、ソース パスは存在しなくなります。
  • boolean success = Files.deleteIfExists(newDir);
    System.out.println("是否删除成功:" + success);
    ログイン後にコピー

  • copy(): ファイルまたはディレクトリをコピーします。対象のパスがすでに存在する場合は上書きされます。
  • Path source = Paths.get("source.txt");
    Path target = Paths.get("target.txt");
    Files.move(source, target);
    ログイン後にコピー

    概要

    Java では、Path 関数はファイル パスとディレクトリ パスを処理するための重要な API です。 Path オブジェクトを使用すると、パス情報の取得、パスの接続、パスの解析、パスが存在するかアクセス可能かどうかの判断など、Java でさまざまなパス操作を簡単に実行できます。パス オブジェクトは、ファイルやディレクトリの作成、削除、移動、コピーにも使用できます。これらのパス関数を深く理解して使用することで、ファイルやディレクトリの場所をより効率的に管理できます。

    以上がJava で Path 関数を使用してパス操作を行う方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!