- すべてのスーパー・インタフェース:
- AttributeView,- BasicFileAttributeView,- FileAttributeView,- FileOwnerAttributeView
POSIXの標準ファミリを実装するオペレーティング・システムは、ファイルの所有者、グループ所有者、および関連するアクセス権を持つファイル・システムを一般的に使用します。 このファイル属性ビューは、これらの属性への読み取りおよび書込みアクセスを提供します。
 readAttributesメソッドは、ファイルの属性を読み取るために使用されます。 ファイルownerは、UserPrincipalによって表され、アクセス制御を目的としたファイル所有者の識別情報を示します。 group-ownerは、GroupPrincipalによって表され、グループ所有者の識別情報を示します。ここでのグループとは、そのグループのメンバーのアクセス権を特定するために管理目的で作成された識別情報です。 
 
 permissions属性は、アクセス権のセットです。 このファイル属性ビューでは、PosixFilePermissionクラスで定義されている9つのアクセス権ビットにアクセスできます。 これらの9つのアクセス権ビットは、ファイル所有者、グループ、およびその他(所有者とグループのメンバーを除く識別情報を意味する)の読み取り、書き込み、および実行アクセスを特定します。 一部のオペレーティング・システムおよびファイル・システムでは、追加のアクセス権ビットを提供することがありますが、このリリースではそれらのほかのビットはこのクラスによって定義されていません。 
 
使用例: ファイルの所有者とアクセス権を出力する必要があるとします。
     Path file = ...
     PosixFileAttributes attrs = Files.getFileAttributeView(file, PosixFileAttributeView.class)
         .readAttributes();
     System.out.format("%s %s%n",
         attrs.owner().getName(),
         PosixFilePermissions.toString(attrs.permissions()));
 
 動的アクセス
 ファイル属性への動的アクセスが必要な場合、この属性ビューによってサポートされている属性はBasicFileAttributeViewおよびFileOwnerAttributeViewで定義されているものと同じですが、そのほかに次の属性もサポートされています。
 
名前 型 "permissions" Set<PosixFilePermission>"group" GroupPrincipal
 getAttributeメソッドは、readAttributes()メソッドを呼び出したかのように、これらの属性またはBasicFileAttributeViewによって定義される任意の属性を読み取るために使用できます。
 
 setAttributeメソッドは、BasicFileAttributeViewに定義される、ファイルの最終変更時間、最終アクセス時間、または作成時間属性を更新するために使用できます。 さらにそれは、setPermissions、setOwner、およびsetGroupメソッドをそれぞれ呼び出したかのように、アクセス権、所有権、またはグループ所有者を更新するためにも使用できます。 
 
初期アクセス権の設定
 この属性ビューをサポートしている実装では、ファイルまたはディレクトリ作成時の初期アクセス権の設定もサポートする場合があります。 初期アクセス権は、"posix:permissions"というnameと、アクセス権のセットを示すvalueを含むFileAttributeとして、createFileまたはcreateDirectoryメソッドに提供されます。 次の例では、ファイルの作成時にasFileAttributeメソッドを使用してFileAttributeを構築します。 
 
     Path path = ...
     Set<PosixFilePermission> perms =
         EnumSet.of(OWNER_READ, OWNER_WRITE, OWNER_EXECUTE, GROUP_READ);
     Files.createFile(path, PosixFilePermissions.asFileAttribute(perms));
 
  ファイルの作成時にアクセス権を設定した場合、実際のアクセス権の値が、属性オブジェクトの値と異なる可能性があります。 その理由は実装に固有のものです。 たとえば、UNIXシステムでは、新しく作成されたファイルのアクセス権ビットに影響を及ぼすumaskがプロセスに含まれています。 アクセス権の設定が実装によってサポートされており、ベースとなるファイル・システムがアクセス権をサポートしている場合、実際のアクセス権の値は、createFileまたはcreateDirectoryメソッドに提供された属性の値に等しいか、それよりも小さくなる必要があります。 つまり、そのファイルの安全性は要求されたものよりも高くなる可能性があります。 
- 導入されたバージョン:
- 1.7
- 
メソッドのサマリー修飾子と型メソッド説明name()属性ビューの名前を返します。一括操作として基本ファイル属性を読み取ります。voidsetGroup(GroupPrincipal group) ファイルのグループ所有者を更新します。voidsetPermissions(Set<PosixFilePermission> perms) ファイル・アクセス権を更新します。インタフェース java.nio.file.attribute.BasicFileAttributeViewで宣言されたメソッドsetTimesインタフェース java.nio.file.attribute.FileOwnerAttributeViewで宣言されたメソッドgetOwner, setOwner
- 
メソッドの詳細- 
nameString name()属性ビューの名前を返します。 この型の属性ビューは"posix"という名前です。- 定義:
- name、インタフェース:- AttributeView
- 定義:
- name、インタフェース:- BasicFileAttributeView
- 定義:
- name、インタフェース:- FileOwnerAttributeView
- 戻り値:
- 属性ビューの名前
 
- 
readAttributesPosixFileAttributes readAttributes() throws IOExceptionインタフェースからコピーされた説明:BasicFileAttributeView一括操作として基本ファイル属性を読み取ります。ほかのファイル・システム操作に関して、すべてのファイル属性が原子的操作として読み取られるかどうかは実装固有です。 - 定義:
- readAttributes、インタフェース:- BasicFileAttributeView
- 戻り値:
- ファイル属性
- 例外:
- IOException- 入出力エラーが発生した場合
- SecurityException- デフォルト・プロバイダで、セキュリティ・マネージャがインストールされていて、それが- RuntimePermission- ("accessUserInformation")を拒否するか、またはその- checkReadメソッドがファイルへの読取りアクセスを拒否する場合。
 
- 
setPermissionsvoid setPermissions(Set<PosixFilePermission> perms) throws IOException ファイル・アクセス権を更新します。- パラメータ:
- perms- アクセス権の新しいセット
- 例外:
- ClassCastException- セットに次のタイプでない要素が含まれる場合:- PosixFilePermission
- IOException- 入出力エラーが発生した場合
- SecurityException- デフォルト・プロバイダで、セキュリティ・マネージャがインストールされていて、それが- RuntimePermission- ("accessUserInformation")を拒否するか、またはその- checkWriteメソッドがファイルへの書込みアクセスを拒否する場合。
 
- 
setGroupvoid setGroup(GroupPrincipal group) throws IOException ファイルのグループ所有者を更新します。- パラメータ:
- group- 新しいファイルのグループ所有者
- 例外:
- IOException- 入出力エラーが発生した場合
- SecurityException- デフォルト・プロバイダで、セキュリティ・マネージャがインストールされていて、それが- RuntimePermission- ("accessUserInformation")を拒否するか、またはその- checkWriteメソッドがファイルへの書込みアクセスを拒否する場合。
 
 
-