クラスFileSystemProvider
Filesクラスによって定義されているメソッドは通常、このクラスのインスタンスに処理を委譲します。
ファイル・システ ・プロバイダは、このクラスで定義されている抽象メソッドを実装する、このクラスの具象実装です。 プロバイダは、URI スキー によって識別されます。 デフォルト・プロバイダは、「file」というURIスキー によって識別されます。 それは、Java仮想マシンからアクセス可能なファイル・システ へのアクセスを提供するFileSystemを作成します。 FileSystemsクラスは、ファイル・システ ・プロバイダを検出してロードする方法を定義します。 デフォルト・プロバイダは通常、システ ・デフォルトのプロバイダですが、システ ・プロパティjava.nio.file.spi.DefaultFileSystemProviderが設定されている 合はオーバーライドできます。 その 合、このプロバイダには引数を1つ取るコンストラクタがあり、その仮パラメータ型は FileSystemProviderです。 ほかのすべてのプロバイダには、そのプロバイダを初期化する、引数を取らないコンストラクタが備わっています。
プロバイダとは、1つまたは複数のFileSystemインスタンスのファクトリです。 各ファイル・システ は、URIのスキー がプロバイダのスキー と一致する 合に、そのURIによって識別されます。 たとえば、デフォルト・ファイル・システ は"file:///"というURIによって識別されます。 たとえば、メモリー・ベースのファイル・システ は、"memory:///?name=logfs"などのURIによって識別されることがあります。 newFileSystemメソッドはファイル・システ の作成に使用でき、getFileSystemメソッドはプロバイダによって作成された既存のファイル・システ への参照を取得する 合に使用できます。 プロバイダが単一ファイル・システ のファクトリである 合は、そのファイル・システ がプロバイダの初期化時に作成されるか、それともあとでnewFileSystemメソッドの呼出し時に作成されるかはプロバイダによって異なります。 デフォルト・プロバイダの 合は、プロバイダの初期化時にFileSystemが作成されます。
このクラス内のすべてのメソッドは、複数の並行スレッドで安全に使用できます。
- 導入されたバージョン:
- 1.7
-
コンストラクタのサマリー
コンストラクタ -
メソッドのサマリー
修飾子と型メソッド説明abstract voidcheckAccess(Path path, AccessMode... modes) ファイルの存在および、オプションでアクセシビリティをチェックします。abstract voidcopy(Path source, Path target, CopyOption... options) ファイルをターゲット・ファイルにコピーします。abstract voidcreateDirectory(Path dir, FileAttribute<?>... attrs) 新しいディレクトリを作成します。voidcreateLink(Path link, Path existing) 既存のファイルに対して新しいリンク(ディレクトリ・エントリ)を作成します。voidcreateSymbolicLink(Path link, Path target, FileAttribute<?>... attrs) ターゲットへのシンボリック・リンクを作成します。abstract voidファイルを削除します。booleandeleteIfExists(Path path) ファイルが存在する 合は削除します。booleanexists(Path path, LinkOption... options) ファイルが存在するかどうかをテストします。abstract <V extends FileAttributeView>
VgetFileAttributeView(Path path, Class<V> type, LinkOption... options) 指定されたタイプのファイル属性ビューを返します。abstract FileStoregetFileStore(Path path) ファイルが置かれているファイル・ストアを表すFileStoreを返します。abstract FileSystemgetFileSystem(URI uri) このプロバイダによって作成された既存のFileSystemを返します。abstract Path指定されたURIを変換することによって、Pathオブジェクトを返します。abstract Stringこのプロバイダを識別するURIスキー を返します。static List<FileSystemProvider> インストールされているファイル・システ ・プロバイダのリストを返します。abstract booleanファイルが しファイルとみなされるかどうかを判断します。abstract booleanisSameFile(Path path, Path path2) 2つのパスが同じファイルを検出するかどうかを判断します。abstract voidmove(Path source, Path target, CopyOption... options) ファイルをターゲット・ファイルに移動するか、そのファイル名を変更します。newAsynchronousFileChannel(Path path, Set<? extends OpenOption> options, ExecutorService executor, FileAttribute<?>... attrs) 読み込みまたは書き込み(あるいはその両方)用のファイルを開くか作成し、そのファイルにアクセスするための非同期のファイル・チャネルを返します。abstract SeekableByteChannelnewByteChannel(Path path, Set<? extends OpenOption> options, FileAttribute<?>... attrs) ファイルを開くか作成し、そのファイルにアクセスするためのシーク可能なバイト・チャネルを返します。abstract DirectoryStream<Path> newDirectoryStream(Path dir, DirectoryStream.Filter<? super Path> filter) ディレクトリを開き、そのディレクトリ内のエントリに対して反復処理を行うDirectoryStreamを返します。newFileChannel(Path path, Set<? extends OpenOption> options, FileAttribute<?>... attrs) 読み取りまたは書き込み(あるいはその両方)用のファイルを開くか作成し、そのファイルにアクセスするためのファイル・チャネルを返します。abstract FileSystemnewFileSystem(URI uri, Map<String, ?> env) URIで識別される新しいFileSystemオブジェクトを構築します。newFileSystem(Path path, Map<String, ?> env) ファイルの内容にファイル・システ としてアクセスする新しいFileSystemを構築します。newInputStream(Path path, OpenOption... options) ファイルを開き、そのファイルから読み取る入力ストリー を返します。newOutputStream(Path path, OpenOption... options) ファイルを開くか作成して、そのファイルにバイトを書き込むために使用できる出力ストリー を返します。abstract <A extends BasicFileAttributes>
AreadAttributes(Path path, Class<A> type, LinkOption... options) 一括操作としてファイル属性を読み取ります。readAttributes(Path path, String attributes, LinkOption... options) 一括操作として一連のファイル属性を読み取ります。<A extends BasicFileAttributes>
AreadAttributesIfExists(Path path, Class<A> type, LinkOption... options) ファイルの属性が存在する 合、その属性を一括操作として読み取ります。readSymbolicLink(Path link) シンボリック・リンクのターゲットを読み取ります。abstract voidsetAttribute(Path path, String attribute, Object value, LinkOption... options) ファイル属性の値を設定します。
-
コンストラクタの詳細
-
FileSystemProvider
protected FileSystemProvider()このクラスの新しいインスタンスを初期化します。構築中、プロバイダはデフォルト・プロバイダに関連付けられたファイルに安全にアクセスできますが、インストールされたほかのプロバイダの循環ロードを避けるために注意が必要です。 インストールされたプロバイダの循環ロードが検出された 合は、未指定のエラーがスローされます。
-
-
メソッドの詳細
-
installedProviders
public static List<FileSystemProvider> installedProviders()インストールされているファイル・システ ・プロバイダのリストを返します。FileSystemsクラスで説明されているように、このメソッドの最初の呼出しによって、デフォルト・プロバイダが初期化され(ま 初期化されていない 合)、インストールされているほかのすべてのプロバイダがロードされます。- 戻り値:
- インストールされているファイル・システ ・プロバイダの変更不可能なリスト。 このリストには少なくとも1つの要 (つまり、デフォルトのファイル・システ ・プロバイダ)が含まれています
- スロー:
ServiceConfigurationError- サービス・プロバイダのロード中にエラーが発生した 合
-
getScheme
-
newFileSystem
public abstract FileSystem newFileSystem(URI uri, Map<String, ?> env) throws IOExceptionURIで識別される新しいFileSystemオブジェクトを構築します。 このメソッドは、URIで識別される新しいファイル・システ を開くためにFileSystems.newFileSystem(URI,Map)メソッドによって呼び出されます。uriパラメータは、このプロバイダがサポートしているスキー と同じスキー (大文字小文字の区別なし)を持つ、階層型の絶対URIです。 URIの正確な形式はプロバイダに大きく依存します。envパラメータは、ファイル・システ を構成するためのプロバイダ固有のプロパティのマップです。このメソッドは、ファイル・システ が以前にこのメソッドの呼出しによって作成されたためにすでに存在している 合には
FileSystemAlreadyExistsExceptionをスローします。 ファイル・システ が閉じられると、以前に作成したファイル・システ と同じURIで新しいファイル・システ を作成することをプロバイダが許可するかどうかはプロバイダによって異なります。- パラメータ:
uri- URI参照env- ファイル・システ を構成するためのプロバイダ固有のプロパティのマップ。空でも可- 戻り値:
- 新しいファイル・システ
- スロー:
IllegalArgumentException-uriパラメータの事前条件が満たされない 合、またはenvパラメータにプロバイダが必要とするプロパティが含まれていない 合、またはプロパティ値が無効な 合IOException- そのファイル・システ の作成中に入出力エラーが発生した 合FileSystemAlreadyExistsException- そのファイル・システ がすでに作成されている 合
-
getFileSystem
public abstract FileSystem getFileSystem(URI uri) このプロバイダによって作成された既存のFileSystemを返します。このメソッドは、
newFileSystem(URI,Map)メソッドを呼び出して作成されたFileSystemへの参照を返します。newFileSystem(Path,Map)メソッドを作成したファイル・システ は、このメソッドでは返されません。 ファイル・システ はそのURIで識別されます。 その正確な形式はプロバイダに大きく依存します。 デフォルト・プロバイダの 合、URIのパス・コンポーネントは"/"であり、機関、クエリー、およびフラグメントの各コンポーネントは未定義です(未定義のコンポーネントはnullで表される)。このプロバイダによって作成されたファイル・システ が
閉じると、このメソッドが、閉じられたファイル・システ への参照を返すかFileSystemNotFoundExceptionをスローするかは、プロバイダによって異なります。 以前に作成したファイル・システ と同じURIで新しいファイル・システ を作成することをプロバイダが許可する 合は、ファイル・システ が閉じられたあとで(かつnewFileSystemメソッドによって新しいインスタンスが作成される前に)このメソッドを呼び出すと、例外がスローされます。- パラメータ:
uri- URI参照- 戻り値:
- ファイル・システ
- スロー:
IllegalArgumentException-uriパラメータの事前条件が満たされない 合FileSystemNotFoundException- ファイル・システ が存在しない 合
-
getPath
指定されたURIを変換することによって、Pathオブジェクトを返します。 結果となるPathは、すでに存在しているか自動的に構築されるFileSystemに関連付けられます。URIの正確な形式はファイル・システ ・プロバイダに依存します。 デフォルト・プロバイダの 合、URIスキー は
"file"であり、指定されたURIには空でないパス・コンポーネントと、未定義のクエリーおよびフラグメント・コンポーネントが含まれます。 結果となるPathはデフォルトのdefaultFileSystemに関連付けられます。- パラメータ:
uri- 変換対象のURI- 戻り値:
- 結果の
Path - スロー:
IllegalArgumentException- URIスキー がこのプロバイダを識別しないか、uriパラメータのほかの事前条件が満たされていない 合FileSystemNotFoundException- URIによって識別されるファイル・システ が存在せず、自動的に作成することもできない 合
-
newFileSystem
public FileSystem newFileSystem(Path path, Map<String, ?> env) throws IOExceptionファイルの内容にファイル・システ としてアクセスする新しいFileSystemを構築します。このメソッドは、1つまたは複数のファイルの内容がファイル・システ として扱われる擬似ファイル・システ の特殊なプロバイダ用です。
envパラメータは、ファイル・システ を構成するためのプロバイダ固有のプロパティのマップです。このプロバイダがそのようなファイル・システ の作成をサポートしていない 合、またはそのプロバイダが指定されたファイルのファイル・タイプを認識しない 合は、
UnsupportedOperationExceptionがスローされます。 このメソッドのデフォルト実装はUnsupportedOperationExceptionをスローします。- パラメータ:
path- ファイルへのパスenv- ファイル・システ を構成するためのプロバイダ固有のプロパティのマップ。空でも可- 戻り値:
- 新しいファイル・システ
- スロー:
UnsupportedOperationException- このプロバイダがそれらの内容にファイル・システ としてアクセスすることをサポートしていないか、指定されたファイルのファイル・タイプを認識しない 合IllegalArgumentException- プロバイダが必要とするプロパティがenvパラメータに含まれていないか、プロパティ値が無効な 合IOException- 入出力エラーが発生した 合
-
newInputStream
public InputStream newInputStream(Path path, OpenOption... options) throws IOException ファイルを開き、そのファイルから読み取る入力ストリー を返します。 このメソッドは、Files.newInputStream(java.nio.file.Path, java.nio.file.OpenOption...)メソッドで指定されたとおりに機能します。このメソッドのデフォルト実装では、
newByteChannel(java.nio.file.Path, java.util.Set<? extends java.nio.file.OpenOption>, java.nio.file.attribute.FileAttribute<?>...)メソッドを呼び出したかのようにファイルへのチャネルを開き、そのチャネルからバイトを読み取るストリー を構築します。 このメソッドは必要に応じてオーバーライドすることをお薦めします。- パラメータ:
path- 開くファイルへのパスoptions- ファイルを開く方法を指定するオプション- 戻り値:
- 新しい入力ストリー
- スロー:
IllegalArgumentException- オプションの無効な組み合わせが指定された 合UnsupportedOperationException- 未サポートのオプションが指定された 合IOException- 入出力エラーが発生した 合
-
newOutputStream
public OutputStream newOutputStream(Path path, OpenOption... options) throws IOException ファイルを開くか作成して、そのファイルにバイトを書き込むために使用できる出力ストリー を返します。 このメソッドは、Files.newOutputStream(java.nio.file.Path, java.nio.file.OpenOption...)メソッドで指定されたとおりに機能します。このメソッドのデフォルト実装では、
newByteChannel(java.nio.file.Path, java.util.Set<? extends java.nio.file.OpenOption>, java.nio.file.attribute.FileAttribute<?>...)メソッドを呼び出したかのようにファイルへのチャネルを開き、そのチャネルにバイトを書き込むストリー を構築します。 このメソッドは必要に応じてオーバーライドすることをお薦めします。- パラメータ:
path- 開くまたは作成するファイルへのパスoptions- ファイルを開く方法を指定するオプション- 戻り値:
- 新しい出力ストリー
- スロー:
IllegalArgumentException-optionsにオプションの無効な組み合わせが含まれる 合UnsupportedOperationException- 未サポートのオプションが指定された 合IOException- 入出力エラーが発生した 合FileAlreadyExistsException- その名前のファイルがすでに存在し、CREATE_NEWオプションが指定されている 合、(optional specific exception)
-
newFileChannel
public FileChannel newFileChannel(Path path, Set<? extends OpenOption> options, FileAttribute<?>... attrs) throws IOException 読み取りまたは書き込み(あるいはその両方)用のファイルを開くか作成し、そのファイルにアクセスするためのファイル・チャネルを返します。 このメソッドは、FileChannel.openメソッドで指定されたとおりに機能します。 プロバイダがファイル・チャネルの構築に必要なすべての機能をサポートしているわけではない 合は、UnsupportedOperationExceptionがスローされます。 デフォルト・プロバイダは、ファイル・チャネルの作成をサポートしている必要があります。 デフォルト実装では、オーバーライドされない 合、UnsupportedOperationExceptionがスローされます。- パラメータ:
path- 開くまたは作成するファイルのパスoptions- ファイルを開く方法を指定するオプションattrs- ファイルの作成時に原子的に設定されるファイル属性のオプションのリスト- 戻り値:
- 新しいファイル・チャネル
- スロー:
IllegalArgumentException- セットにオプションの無効な組み合わせが含まれる 合UnsupportedOperationException- このプロバイダがファイル・チャネルの作成をサポートしていない 合、あるいは未サポートのオープン・オプションまたはファイル属性が指定された 合FileAlreadyExistsException- その名前のファイルがすでに存在し、CREATE_NEWオプションが指定され、そのファイルが「(optional specific exception)の書き込みのために開かれている 合」IOException- 入出力エラーが発生した 合
-
newAsynchronousFileChannel
public AsynchronousFileChannel newAsynchronousFileChannel(Path path, Set<? extends OpenOption> options, ExecutorService executor, FileAttribute<?>... attrs) throws IOException 読み込みまたは書き込み(あるいはその両方)用のファイルを開くか作成し、そのファイルにアクセスするための非同期のファイル・チャネルを返します。 このメソッドは、AsynchronousFileChannel.openメソッドで指定されたとおりに機能します。 プロバイダが非同期ファイル・チャネルの構築に必要なすべての機能をサポートしているわけではない 合は、UnsupportedOperationExceptionがスローされます。 デフォルト・プロバイダは、非同期ファイル・チャネルの作成をサポートしている必要があります。 このメソッドのデフォルト実装では、オーバーライドされない 合、UnsupportedOperationExceptionがスローされます。- パラメータ:
path- 開くまたは作成するファイルのパスoptions- ファイルを開く方法を指定するオプションexecutor- スレッド・プール、またはチャネルをデフォルトのスレッド・プールに関連付ける 合はnullattrs- ファイルの作成時に原子的に設定されるファイル属性のオプションのリスト- 戻り値:
- 新しい非同期ファイル・チャネル
- スロー:
IllegalArgumentException- セットにオプションの無効な組み合わせが含まれる 合UnsupportedOperationException- このプロバイダが非同期ファイル・チャネルの作成をサポートしていない 合、あるいは未サポートのオープン・オプションまたはファイル属性が指定された 合FileAlreadyExistsException- その名前のファイルがすでに存在し、CREATE_NEWオプションが指定され、そのファイルが「(optional specific exception)の書き込みのために開かれている 合」IOException- 入出力エラーが発生した 合
-
newByteChannel
public abstract SeekableByteChannel newByteChannel(Path path, Set<? extends OpenOption> options, FileAttribute<?>... attrs) throws IOException ファイルを開くか作成し、そのファイルにアクセスするためのシーク可能なバイト・チャネルを返します。 このメソッドは、Files.newByteChannel(Path,Set,FileAttribute[])メソッドで指定されたとおりに機能します。- パラメータ:
path- 開くまたは作成するファイルへのパスoptions- ファイルを開く方法を指定するオプションattrs- ファイルの作成時に原子的に設定されるファイル属性のオプションのリスト- 戻り値:
- 新しいシーク可能なバイト・チャネル
- スロー:
IllegalArgumentException- セットにオプションの無効な組み合わせが含まれる 合UnsupportedOperationException- 未サポートのオープン・オプションが指定された 合またはファイルの作成時に原子的に設定できない属性が配列に含まれる 合FileAlreadyExistsException- その名前のファイルがすでに存在し、CREATE_NEWオプションが指定され、そのファイルが「(optional specific exception)の書き込みのために開かれている 合」IOException- 入出力エラーが発生した 合
-
newDirectoryStream
public abstract DirectoryStream<Path> newDirectoryStream(Path dir, DirectoryStream.Filter<? super Path> filter) throws IOException ディレクトリを開き、そのディレクトリ内のエントリに対して反復処理を行うDirectoryStreamを返します。 このメソッドは、Files.newDirectoryStream(java.nio.file.Path, java.nio.file.DirectoryStream.Filter)メソッドで指定されたとおりに機能します。- パラメータ:
dir- ディレクトリへのパスfilter- ディレクトリ・ストリー ・フィルタ- 戻り値:
- 新しく開かれた
DirectoryStreamオブジェクト - スロー:
NotDirectoryException- ファイルがディレクトリではないために開けなかった 合(オプションの固有例外)IOException- 入出力エラーが発生した 合
-
createDirectory
public abstract void createDirectory(Path dir, FileAttribute<?>... attrs) throws IOException 新しいディレクトリを作成します。 このメソッドは、Files.createDirectory(java.nio.file.Path, java.nio.file.attribute.FileAttribute<?>...)メソッドで指定されたとおりに機能します。- パラメータ:
dir- 作成するディレクトリattrs- ディレクトリの作成時に原子的に設定されるファイル属性のオプションのリスト- スロー:
UnsupportedOperationException- ディレクトリの作成時に原子的に設定できない属性が配列に含まれる 合FileAlreadyExistsException- その名前のファイルがすでに存在するためにディレクトリを作成できなかった 合(オプションの固有例外)IOException- 入出力エラーが発生した 合または親ディレクトリが存在しない 合
-
createSymbolicLink
public void createSymbolicLink(Path link, Path target, FileAttribute<?>... attrs) throws IOException ターゲットへのシンボリック・リンクを作成します。 このメソッドは、Files.createSymbolicLink(java.nio.file.Path, java.nio.file.Path, java.nio.file.attribute.FileAttribute<?>...)メソッドで指定されたとおりに機能します。このメソッドのデフォルト実装は
UnsupportedOperationExceptionをスローします。- パラメータ:
link- 作成するシンボリック・リンクへのパスtarget- シンボリック・リンクのターゲットattrs- シンボリック・リンクの作成時に原子的に設定される属性の配列- スロー:
UnsupportedOperationException- 実装がシンボリック・リンクをサポートしない 合、またはシンボリック・リンクの作成時に原子的に設定できない属性が配列に含まれる 合FileAlreadyExistsException- その名前のファイルがすでに存在する 合(オプションの固有例外)IOException- 入出力エラーが発生した 合
-
createLink
public void createLink(Path link, Path existing) throws IOException 既存のファイルに対して新しいリンク(ディレクトリ・エントリ)を作成します。 このメソッドは、Files.createLink(java.nio.file.Path, java.nio.file.Path)メソッドで指定されたとおりに機能します。このメソッドのデフォルト実装は
UnsupportedOperationExceptionをスローします。- パラメータ:
link- 作成するリンク(ディレクトリ・エントリ)existing- 既存のファイルへのパス- スロー:
UnsupportedOperationException- 実装が、既存のファイルをディレクトリに追 することをサポートしない 合FileAlreadyExistsException- その名前のファイルがすでに存在するためにエントリを作成できなかった 合(オプションの固有例外)IOException- 入出力エラーが発生した 合
-
delete
public abstract void delete(Path path) throws IOException ファイルを削除します。 このメソッドは、Files.delete(java.nio.file.Path)メソッドで指定されたとおりに機能します。- パラメータ:
path- 削除するファイルへのパス- スロー:
NoSuchFileException- ファイルが存在しない 合(オプションの固有例外)DirectoryNotEmptyException- ファイルがディレクトリで、ディレクトリが空でないために削除できなかった 合(オプションの固有例外)IOException- 入出力エラーが発生した 合
-
deleteIfExists
public boolean deleteIfExists(Path path) throws IOException ファイルが存在する 合は削除します。 このメソッドは、Files.deleteIfExists(java.nio.file.Path)メソッドで指定されたとおりに機能します。このメソッドのデフォルト実装では、単に
delete(java.nio.file.Path)を呼び出し、ファイルが存在しない 合はNoSuchFileExceptionを無視します。 必要に応じてオーバーライドされることもあります。- パラメータ:
path- 削除するファイルへのパス- 戻り値:
- ファイルがこのメソッドによって削除された 合は
true、ファイルが存在しないために削除できなかった 合はfalse - スロー:
DirectoryNotEmptyException- ファイルがディレクトリで、ディレクトリが空でないために削除できなかった 合(オプションの固有例外)IOException- 入出力エラーが発生した 合
-
readSymbolicLink
public Path readSymbolicLink(Path link) throws IOException シンボリック・リンクのターゲットを読み取ります。 このメソッドは、Files.readSymbolicLink(java.nio.file.Path)メソッドで指定されたとおりに機能します。このメソッドのデフォルト実装は
UnsupportedOperationExceptionをスローします。- パラメータ:
link- シンボリック・リンクへのパス- 戻り値:
- シンボリック・リンクのターゲット
- スロー:
UnsupportedOperationException- この実装がシンボリック・リンクをサポートしていない 合。NotLinkException- ファイルがシンボリック・リンクではないためにターゲットを読み取れなかった 合(オプションの固有例外)IOException- 入出力エラーが発生した 合
-
copy
public abstract void copy(Path source, Path target, CopyOption... options) throws IOException ファイルをターゲット・ファイルにコピーします。 このメソッドは、ソースとターゲットのパスがどちらもこのプロバイダに関連付けられていなければならない点を除き、Files.copy(Path,Path,CopyOption[])メソッドによって指定されたとおりに機能します。- パラメータ:
source- コピーするファイルへのパスtarget- ターゲット・ファイルへのパスoptions- コピーをどのように実行するべきかを指定するオプション- スロー:
UnsupportedOperationException- サポートされないコピー・オプションが配列に含まれる 合FileAlreadyExistsException- ターゲット・ファイルは存在するけれども、REPLACE_EXISTINGオプションが指定されていないために置換できない 合(オプションの固有例外)DirectoryNotEmptyException-REPLACE_EXISTINGオプションが指定されているけれども、空でないディレクトリであるために置換できない 合(オプションの固有例外)IOException- 入出力エラーが発生した 合
-
move
public abstract void move(Path source, Path target, CopyOption... options) throws IOException ファイルをターゲット・ファイルに移動するか、そのファイル名を変更します。 このメソッドは、ソースとターゲットのパスがどちらもこのプロバイダに関連付けられていなければならない点を除き、Files.move(java.nio.file.Path, java.nio.file.Path, java.nio.file.CopyOption...)メソッドによって指定されたとおりに機能します。- パラメータ:
source- 移動するファイルへのパスtarget- ターゲット・ファイルへのパスoptions- 移動をどのように実行するべきかを指定するオプション- スロー:
UnsupportedOperationException- サポートされないコピー・オプションが配列に含まれる 合FileAlreadyExistsException- ターゲット・ファイルは存在するけれども、REPLACE_EXISTINGオプションが指定されていないために置換できない 合(オプションの固有例外)DirectoryNotEmptyException-REPLACE_EXISTINGオプションが指定されているけれども、空でないディレクトリであるために置換できない 合(オプションの固有例外)AtomicMoveNotSupportedException- オプション配列にATOMIC_MOVEオプションを含まれるけれども、原子的なファイル・システ 操作としてファイルを移動できない 合。IOException- 入出力エラーが発生した 合
-
isSameFile
public abstract boolean isSameFile(Path path, Path path2) throws IOException 2つのパスが同じファイルを検出するかどうかを判断します。 このメソッドは、Files.isSameFile(java.nio.file.Path, java.nio.file.Path)メソッドで指定されたとおりに機能します。- パラメータ:
path- ファイルへの一方のパスpath2- もう一方のパス- 戻り値:
- 2つのパスが同じファイルを検出する 合にのみ
true - スロー:
IOException- 入出力エラーが発生した 合
-
isHidden
public abstract boolean isHidden(Path path) throws IOException ファイルが しファイルとみなされるかどうかを判断します。 このメソッドは、Files.isHidden(java.nio.file.Path)メソッドで指定されたとおりに機能します。このメソッドは
isHiddenメソッドから呼び出されます。- パラメータ:
path- テストするファイルへのパス- 戻り値:
- ファイルが しとみなされる 合
true - スロー:
IOException- 入出力エラーが発生した 合
-
getFileStore
public abstract FileStore getFileStore(Path path) throws IOException ファイルが置かれているファイル・ストアを表すFileStoreを返します。 このメソッドは、Files.getFileStore(java.nio.file.Path)メソッドで指定されたとおりに機能します。- パラメータ:
path- ファイルへのパス- 戻り値:
- ファイルが 納されるファイル・ストア
- スロー:
IOException- 入出力エラーが発生した 合
-
checkAccess
public abstract void checkAccess(Path path, AccessMode... modes) throws IOException ファイルの存在および、オプションでアクセシビリティをチェックします。このメソッドは、ファイルのアクセシビリティをチェックするために
isReadable、isWritable、およびisExecutableメソッドによって使用されることがあります。このメソッドは、次のように、
modesパラメータに指定されたすべてのアクセス・モードに従って、ファイルの存在と、Java仮想マシンにそのファイルへのアクセスを許可する適切な特権があることを確認します。値 説明 READファイルが存在することと、Java仮想マシンにそのファイルを読み取るためのアクセス権があることを確認します。 WRITEファイルが存在することと、Java仮想マシンにそのファイルに書き込むためのアクセス権があることを確認します。 EXECUTEファイルが存在することと、Java仮想マシンにそのファイルを 実行するためのアクセス権があることを確認します。 ディレクトリへのアクセスをチェックする 合はセマンティックスが異なる 合があります。 たとえば、UNIXシステ では、EXECUTEアクセスのチェックを行うと、Java仮想マシンに、ファイルまたはサブディレクトリにアクセスするためにディレクトリを検索する権限があることが確認されます。modesパラメータの長さがゼロの 合は、そのファイルの存在が確認されます。このオブジェクトによって参照されるファイルがシンボリック・リンクである 合、このメソッドはシンボリック・リンクをたどります。 実装によっては、このメソッドが、ファイルへの効果的なアクセスをチェックするために、ファイル・アクセス権、アクセス制御リスト、またはその他のファイル属性を読み取る必要がある 合があります。 ファイルへの効果的なアクセスを調べるために、いくつかの属性へのアクセスが必要になる 合があるため、一部の実装では、このメソッドはほかのファイル・システ 操作に関して原子的でない可能性があります。
- パラメータ:
path- チェックするファイルへのパスmodes- チェックするアクセス・モード。要 がない 合もある- スロー:
UnsupportedOperationException- 実装ではREAD、WRITE、およびEXECUTEアクセスのチェックをサポートしている必要があります。 この例外は、Access列挙が将来のリリースで拡張されることを考慮して指定されています。NoSuchFileException- ファイルが存在しない 合(オプションの固有例外)AccessDeniedException- 要求されたアクセスが拒否される 合、またはJava仮想マシンに十分な特権がないなどの理由でアクセスを調べられない 合。(オプションの固有例外)IOException- 入出力エラーが発生した 合
-
getFileAttributeView
public abstract <V extends FileAttributeView> V getFileAttributeView(Path path, Class<V> type, LinkOption... options) 指定されたタイプのファイル属性ビューを返します。 このメソッドは、Files.getFileAttributeView(java.nio.file.Path, java.lang.Class<V>, java.nio.file.LinkOption...)メソッドで指定されたとおりに機能します。- 型パラメータ:
V-FileAttributeView型- パラメータ:
path- ファイルへのパスtype- ファイル属性ビューに対応するClassオブジェクトoptions- シンボリック・リンクの処理方法を示すオプション- 戻り値:
- 指定されたタイプのファイル属性ビュー、または属性ビューのタイプがない 合は
null
-
readAttributes
public abstract <A extends BasicFileAttributes> A readAttributes(Path path, Class<A> type, LinkOption... options) throws IOException 一括操作としてファイル属性を読み取ります。 このメソッドは、Files.readAttributes(Path,Class,LinkOption[])メソッドで指定されたとおりに機能します。- 型パラメータ:
A-BasicFileAttributes型- パラメータ:
path- ファイルへのパスtype- 読み取る必要のあるファイル属性のClassoptions- シンボリック・リンクの処理方法を示すオプション- 戻り値:
- ファイル属性
- スロー:
UnsupportedOperationException- 指定されたタイプの属性がサポートされない 合IOException- 入出力エラーが発生した 合
-
readAttributes
public abstract Map<String,Object> readAttributes(Path path, String attributes, LinkOption... options) throws IOException 一括操作として一連のファイル属性を読み取ります。 このメソッドは、Files.readAttributes(Path,String,LinkOption[])メソッドで指定されたとおりに機能します。- パラメータ:
path- ファイルへのパスattributes- 読み取る属性options- シンボリック・リンクの処理方法を示すオプション- 戻り値:
- 返される属性のマップ。空の 合もある。 マップのキーは属性名で、その値は属性値である
- スロー:
UnsupportedOperationException- 属性ビューが使用できない 合IllegalArgumentException- 属性が指定されない 合または認識されない属性が指定された 合IOException- 入出力エラーが発生した 合
-
setAttribute
public abstract void setAttribute(Path path, String attribute, Object value, LinkOption... options) throws IOException ファイル属性の値を設定します。 このメソッドは、Files.setAttribute(java.nio.file.Path, java.lang.String, java.lang.Object, java.nio.file.LinkOption...)メソッドで指定されたとおりに機能します。- パラメータ:
path- ファイルへのパスattribute- 設定する属性value- 属性値options- シンボリック・リンクの処理方法を示すオプション- スロー:
UnsupportedOperationException- 属性ビューが使用できない 合IllegalArgumentException- 属性名が指定されない 合、または認識されない 合、または属性値の型は正しいが値が不適切な 合ClassCastException- 属性値が予想される型でないか、予想される型でない要 を含むコレクションである 合IOException- 入出力エラーが発生した 合
-
exists
public boolean exists(Path path, LinkOption... options) ファイルが存在するかどうかをテストします。 このメソッドは、Files.exists(Path, LinkOption...)メソッドで指定されたとおりに機能します。- 実装要件:
- このメソッドのデフォルトの実装では、シンボリック・リンクに従うと
checkAccess(Path, AccessMode...)メソッドが起動されます。 オプションNOFOLLOW_LINKSが存在する 合、シンボリック・リンクは追跡されず、ファイルが存在するかどうかを判断するためにメソッドreadAttributes(Path, Class, LinkOption...)が呼び出されます。 - パラメータ:
path- テストするファイルへのパスoptions- シンボリック・リンクの処理方法を示すオプション- 戻り値:
- ファイルが存在する 合は
true。ファイルが存在しないか、その存在を判断できない 合はfalse。 - 導入されたバージョン:
- 20
-
readAttributesIfExists
public <A extends BasicFileAttributes> A readAttributesIfExists(Path path, Class<A> type, LinkOption... options) throws IOException ファイルの属性が存在する 合、その属性を一括操作として読み取ります。typeパラメータは必要な属性のタイプで、このメソッドではそのタイプがサポートされている 合にそのインスタンスを返します。 すべての実装でファイル属性の基本セットがサポートされているため、このメソッドをBasicFileAttributes.classというtypeパラメータで呼び出した 合、UnsupportedOperationExceptionはスローされません。options配列を使用すると、ファイルがシンボリック・リンクである 合のシンボリック・リンクの処理方法を指定できます。 デフォルトでは、シンボリック・リンクはたどられ、リンクの最終ターゲットのファイル属性が読み取られます。 オプションNOFOLLOW_LINKSが存在する 合は、シンボリック・リンクはたどられません。ほかのファイル・システ 操作に関して、すべてのファイル属性が原子的操作として読み取られるかどうかは実装固有です。
- 実装要件:
- このメソッドのデフォルト実装では、
readAttributes(Path, Class, LinkOption...)メソッドを呼び出してファイルの属性を読み取ります。 - 型パラメータ:
A-BasicFileAttributes型- パラメータ:
path- ファイルへのパスtype- 読み取る必要のあるファイル属性のClassoptions- シンボリック・リンクの処理方法を示すオプション- 戻り値:
- ファイル属性またはファイルが存在しない 合はnull
- スロー:
UnsupportedOperationException- 指定されたタイプの属性がサポートされない 合IOException- 入出力エラーが発生した 合- 導入されたバージョン:
- 20
-