ホームページ >Java >&#&チュートリアル >JAR ファイル内のリソースからファイル インスタンスを作成するにはどうすればよいですか?

JAR ファイル内のリソースからファイル インスタンスを作成するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-24 08:47:11776ブラウズ

How Can I Create a File Instance from a Resource Inside a JAR File?

Jar 内のリソースからファイル インスタンスを作成する

JAR ファイルから取得したリソースからファイル インスタンスを作成するのは難しい場合があります。しかし、それを達成する方法はあります。

を使用した解決策java.io.File:

提供されたコード スニペットは、クラスローダーを使用して取得した URL から File インスタンスを作成する方法を示しています:

URL dir_url = ClassLoader.getSystemResource(dir_path);
File dir = new File(dir_url.toURI());

これにより、ファイルを操作できるようになりますファイル システム内にあるかのように JAR から取得します。

を使用した代替アプローチClassLoader:

java.io.File の使用を完全に回避するには、クラスパスからディレクトリをロードし、クラスローダーを使用してその内容を直接リストできます:

URL dir_url = ClassLoader.getSystemResource(dir_path);
Enumeration<URL> files = dir_url.openStream().available();
while (files.hasMoreElements()) {
  // Process each file or entity
}

リソースからストリームをロードする:

ファイルをストリームとしてロードするには、次のことができます。次のコードを使用します:

InputStream stream = ClassLoader.getSystemResourceAsStream(dir_path + "/" + file);

これにより、ファイルのコンテンツを読み取ることができるストリームが提供されます。

以上がJAR ファイル内のリソースからファイル インスタンスを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。