IPosixFileAttributeView インターフェイス

定義

ポータブル オペレーティング システム インターフェイス (POSIX) ファミリの標準を実装するオペレーティング システムで使用されるファイル システム上のファイルに一般的に関連付けられているファイル属性のビューを提供するファイル属性ビュー。

[Android.Runtime.Register("java/nio/file/attribute/PosixFileAttributeView", "", "Java.Nio.FileNio.Attributes.IPosixFileAttributeViewInvoker", ApiSince=26)]
public interface IPosixFileAttributeView : IDisposable, Java.Interop.IJavaPeerable, Java.Nio.FileNio.Attributes.IBasicFileAttributeView, Java.Nio.FileNio.Attributes.IFileOwnerAttributeView
[<Android.Runtime.Register("java/nio/file/attribute/PosixFileAttributeView", "", "Java.Nio.FileNio.Attributes.IPosixFileAttributeViewInvoker", ApiSince=26)>]
type IPosixFileAttributeView = interface
    interface IBasicFileAttributeView
    interface IFileAttributeView
    interface IAttributeView
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface IFileOwnerAttributeView
属性
実装

注釈

ポータブル オペレーティング システム インターフェイス (POSIX) ファミリの標準を実装するオペレーティング システムで使用されるファイル システム上のファイルに一般的に関連付けられているファイル属性のビューを提供するファイル属性ビュー。

POSIX ファミリの標準を実装するオペレーティング システムでは、通常、ファイル <em>owner</em>、<em>group-owner</em>、および関連する <em>access アクセス許可</em>を持つファイル システムが使用されます。 このファイル属性ビューは、これらの属性に対する読み取りと書き込みのアクセスを提供します。

#readAttributes() readAttributes メソッドは、ファイルの属性を読み取るために使用されます。 ファイル PosixFileAttributes#owner() owner は、アクセス制御の目的でファイル所有者の ID である UserPrincipal によって表されます。 PosixFileAttributes#group() group-ownerによって表されるGroupPrincipalは、グループ所有者の ID です。グループは、グループのメンバーのアクセス権を決定するために管理目的で作成された ID です。

PosixFileAttributes#permissions() permissions属性は、一連のアクセス許可です。 このファイル属性ビューは、 PosixFilePermission クラスによって定義された 9 つのアクセス許可へのアクセスを提供します。 これら 9 つのアクセス許可ビットによって、ファイル所有者、グループ、およびその他のユーザー (グループの所有者とメンバー以外の ID を意味する) に対する <em>read</em>、 <em>write</em>、および <em>execute</em> アクセスが決まります。 オペレーティング システムやファイル システムによっては、追加のアクセス許可ビットが提供される場合がありますが、これらの他のビットへのアクセスは、このリリースではこのクラスによって定義されていません。

<b>Usage の例:</b> ファイルの所有者とアクセス許可を出力する必要があるとします。

Path file = ...
                PosixFileAttributes attrs = Files.getFileAttributeView(file, PosixFileAttributeView.class)
                    .readAttributes();
                System.out.format("%s %s%n",
                    attrs.owner().getName(),
                    PosixFilePermissions.toString(attrs.permissions()));

<h2> ダイナミック アクセス </h2>

ファイル属性への動的アクセスが必要な場合、この属性ビューでサポートされる属性は、およびによって定義されます。 さらに、次の属性がサポートされています:blockquotetable class="striped"caption style ="display:none"Supported attributes/captiontheadtrth scope="col" Name /thth scope="col" Type /th/tr/theadtbodytrth scope="row" "permissions" /thtd<>/td/trtrth scope="row" "group" /thtd/td/tr/tbody/table/blockquote

Files#getAttribute getAttribute メソッドは、これらの属性、または BasicFileAttributeView メソッドを呼び出すかのように#readAttributes readAttributes()によって定義された属性のいずれかを読み取るために使用できます。

Files#setAttribute setAttributeメソッドは、ファイルの最終変更時刻、最終アクセス時刻を更新したり、BasicFileAttributeViewで定義されている時刻属性を作成したりするために使用できます。 また、 #setPermissions setPermissions#setOwner setOwner、および #setGroup setGroup メソッドをそれぞれ呼び出すかのように、アクセス許可、所有者、またはグループ所有者を更新するためにも使用できます。

<h2> 初期アクセス許可の設定 </h2>

この属性ビューをサポートする実装では、ファイルまたはディレクトリの作成時の初期アクセス許可の設定もサポートされる場合があります。 最初のアクセス許可は、Files#createFile createFileFiles#createDirectory createDirectoryとアクセス許可のセットであるFileAttributeを持つFileAttribute#name nameとして、"posix:permissions"またはFileAttribute#value valueメソッドに提供されます。 次の例では、 PosixFilePermissions#asFileAttribute asFileAttribute メソッドを使用して、ファイルの作成時に FileAttribute を作成します。

Path path = ...
                Set&lt;PosixFilePermission&gt; perms =
                    EnumSet.of(OWNER_READ, OWNER_WRITE, OWNER_EXECUTE, GROUP_READ);
                Files.createFile(path, PosixFilePermissions.asFileAttribute(perms));

ファイル作成時にアクセス許可が設定されている場合、アクセス許可の実際の値は属性オブジェクトの値と異なる場合があります。 その理由は、実装固有です。 たとえば UNIX システムでは、新しく作成されたファイルのアクセス許可ビットに影響を与える <em>umask</em> があります。 実装でアクセス許可の設定がサポートされ、基になるファイル システムがアクセス許可をサポートしている場合は、実際のアクセス許可の値が、 Files#createFile createFile または Files#createDirectory createDirectory メソッドに指定された属性の値以下である必要があります。 言い換えると、ファイルの安全性が要求よりも高い可能性があります。

1.7 で追加されました。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

プロパティ

名前 説明
Handle

基になる Android オブジェクトの JNI 値を取得します。

(継承元 IJavaObject)
JniIdentityHashCode

ラップされたインスタンスの java.lang.System.identityHashCode() の値を返します。

(継承元 IJavaPeerable)
JniManagedPeerState

マネージド ピアの状態。

(継承元 IJavaPeerable)
JniPeerMembers

メンバー アクセスと呼び出しのサポート。

(継承元 IJavaPeerable)
Owner

ファイルの所有者を取得または設定します。

(継承元 IFileOwnerAttributeView)
PeerReference

ラップされたJava オブジェクト インスタンスのJniObjectReferenceを返します。

(継承元 IJavaPeerable)

メソッド

名前 説明
Disposed()

インスタンスが破棄されたときに呼び出されます。

(継承元 IJavaPeerable)
DisposeUnlessReferenced()

このインスタンスへの未処理の参照がない場合は、 Dispose()を呼び出します。それ以外の場合は何も実行しません。

(継承元 IJavaPeerable)
Finalized()

インスタンスが終了したときに呼び出されます。

(継承元 IJavaPeerable)
Name()

属性ビューの名前を返します。

ReadAttributes()

POSIX ファイル属性を一括操作として読み取ります。

SetGroup(IGroupPrincipal)

ファイル グループ所有者を更新します。

SetJniIdentityHashCode(Int32)

JniIdentityHashCodeによって返される値を設定します。

(継承元 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

ポータブル オペレーティング システム インターフェイス (POSIX) ファミリの標準を実装するオペレーティング システムで使用されるファイル システム上のファイルに一般的に関連付けられているファイル属性のビューを提供するファイル属性ビュー。

(継承元 IJavaPeerable)
SetPeerReference(JniObjectReference)

PeerReferenceによって返される値を設定します。

(継承元 IJavaPeerable)
SetPermissions(ICollection<PosixFilePermission>)

ファイルのアクセス許可を更新します。

SetTimes(FileTime, FileTime, FileTime)

ファイルの最終変更時刻、最終アクセス時刻、および作成時刻属性の一部またはすべてを更新します。

(継承元 IBasicFileAttributeView)
UnregisterFromRuntime()

ランタイムが将来の Java.Interop.JniRuntime+JniValueManager.PeekValue 呼び出しから返されないように、このインスタンスの登録を解除します。

(継承元 IJavaPeerable)

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

インスタンス selfの型の JNI 名を取得します。

JavaAs<TResult>(IJavaPeerable)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

ポータブル オペレーティング システム インターフェイス (POSIX) ファミリの標準を実装するオペレーティング システムで使用されるファイル システム上のファイルに一般的に関連付けられているファイル属性のビューを提供するファイル属性ビュー。

TryJavaCast<TResult>(IJavaPeerable, TResult)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

適用対象