public interface StandardJavaFileManager extends JavaFileManager
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();このファイル・マネージャは、通常のファイル、zipファイル・エントリ、または同様のファイル・システムに基づくコンテナ内のエントリを表すファイル・オブジェクトを作成します。 このインタフェースを実装しているファイル・マネージャから返されるファイル・オブジェクトは、次の動作に従う必要があります。DiagnosticCollector<JavaFileObject>diagnostics = newDiagnosticCollector<JavaFileObject>(); StandardJavaFileManager fm = compiler.getStandardFileManager(diagnostics, null, null);
FileObject.delete()はFile.delete()と同等です。
FileObject.getLastModified()はFile.lastModified()と同等です。
FileObject.getCharContent(boolean)、FileObject.openInputStream()、およびFileObject.openReader(boolean)の各メソッドは、次に示すものが成功した場合に成功する必要がある(エンコーディングの問題は無視)。
new FileInputStream(new File(fileObject.toUri()))
FileObject.openOutputStream()およびFileObject.openWriter()の各メソッドは、次に示すものが成功した場合に成功する必要がある(エンコーディングの問題は無視)。
new FileOutputStream(new File(fileObject.toUri()))
FileObject.toUri()から返されるURIは次のようになる必要があります。
file:///C:/Documents%20and%20Settings/UncleBob/BobsApp/Test.java
jar:///C:/Documents%20and%20Settings/UncleBob/lib/vendorA.jar!com/vendora/LibraryClass.class
file:BobsApp/Test.java (ファイル名が相対的で、現在のディレクトリに依存している)
jar:lib/vendorA.jar!com/vendora/LibraryClass.class (!のあとの構成要素は正しいが、パスの前半が現在のディレクトリに依存している)
Test.java (このURIは現在のディレクトリに依存しており、スキーマを持たない)
jar:///C:/Documents%20and%20Settings/UncleBob/BobsApp/../lib/vendorA.jar!com/vendora/LibraryClass.class (パスが標準化されていない)
JavaFileManager.Location| 修飾子と型 | メソッド | 説明 |
|---|---|---|
Iterable<? extends JavaFileObject> |
getJavaFileObjects(File... files) |
指定されたファイルを表すファイル・オブジェクトを取得します。
|
Iterable<? extends JavaFileObject> |
getJavaFileObjects(String... names) |
指定されたファイル名を表すファイル・オブジェクトを取得します。
|
Iterable<? extends JavaFileObject> |
getJavaFileObjectsFromFiles(Iterable<? extends File> files) |
指定されたファイルを表すファイル・オブジェクトを取得します。
|
Iterable<? extends JavaFileObject> |
getJavaFileObjectsFromStrings(Iterable<String> names) |
指定されたファイル名を表すファイル・オブジェクトを取得します。
|
Iterable<? extends File> |
getLocation(JavaFileManager.Location location) |
指定された場所に関連付けられているパスを取得します。
|
boolean |
isSameFile(FileObject a, FileObject b) |
2つのファイル・オブジェクトを比較し、それらが同一の正規のファイル、zipファイル・エントリ、またはファイル・システムに基づくコンテナ内のエントリを表している場合はtrueを返します。
|
void |
setLocation(JavaFileManager.Location location, Iterable<? extends File> path) |
指定されたパスと指定された場所を関連付けます。
|
close, flush, getClassLoader, getFileForInput, getFileForOutput, getJavaFileForInput, getJavaFileForOutput, handleOption, hasLocation, inferBinaryName, listisSupportedOptionboolean isSameFile(FileObject a, FileObject b)
isSameFile、インタフェースJavaFileManagera - ファイル・オブジェクトb - ファイル・オブジェクトIllegalArgumentException - 一方の引数が別のファイル・マネージャ実装で作成された場合Iterable<? extends JavaFileObject> getJavaFileObjectsFromFiles(Iterable<? extends File> files)
files - ファイルのリストIllegalArgumentException - ファイルのリストにディレクトリが含まれる場合Iterable<? extends JavaFileObject> getJavaFileObjects(File... files)
getJavaFileObjectsFromFiles(Arrays.asList(files))
files - ファイルの配列IllegalArgumentException - ファイルの配列にディレクトリが含まれる場合NullPointerException - 指定された配列にnull要素が含まれる場合Iterable<? extends JavaFileObject> getJavaFileObjectsFromStrings(Iterable<String> names)
names - ファイル名のリストIllegalArgumentException - ファイル名のリストにディレクトリが含まれる場合Iterable<? extends JavaFileObject> getJavaFileObjects(String... names)
getJavaFileObjectsFromStrings(Arrays.asList(names))
names - ファイル名のリストIllegalArgumentException - ファイル名の配列にディレクトリが含まれる場合NullPointerException - 指定された配列にnull要素が含まれる場合void setLocation(JavaFileManager.Location location, Iterable<? extends File> path) throws IOException
location - 場所path - ファイルのリスト。nullの場合、この場所のデフォルトのパスを使用IllegalArgumentException - 場所が出力場所であり、パスに含まれる要素が厳密に1個でない場合IOException - 場所が出力場所であり、パスが既存のディレクトリを表していない場合getLocation(javax.tools.JavaFileManager.Location)Iterable<? extends File> getLocation(JavaFileManager.Location location)
location - 場所nullsetLocation(javax.tools.JavaFileManager.Location, java.lang.Iterable<? extends java.io.File>) バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。