ContentResolver.OpenFileDescriptor メソッド

定義

オーバーロード

名前 説明
OpenFileDescriptor(Uri, String)

生ファイル記述子を開いて、URI の下のデータにアクセスします。

OpenFileDescriptor(Uri, String, CancellationSignal)

生ファイル記述子を開いて、URI の下のデータにアクセスします。

OpenFileDescriptor(Uri, String)

生ファイル記述子を開いて、URI の下のデータにアクセスします。

[Android.Runtime.Register("openFileDescriptor", "(Landroid/net/Uri;Ljava/lang/String;)Landroid/os/ParcelFileDescriptor;", "")]
public Android.OS.ParcelFileDescriptor? OpenFileDescriptor(Android.Net.Uri uri, string mode);
[<Android.Runtime.Register("openFileDescriptor", "(Landroid/net/Uri;Ljava/lang/String;)Landroid/os/ParcelFileDescriptor;", "")>]
member this.OpenFileDescriptor : Android.Net.Uri * string -> Android.OS.ParcelFileDescriptor

パラメーター

uri
Uri

開く目的の URI。

mode
String

ファイル モードの文字列形式。 "r"、"w"、"wt"、"wa"、"rw"、または "rwt" を指定できます。 これらの正確な実装は、プロバイダーの実装ごとに異なる場合があることに注意してください。たとえば、"w" は切り捨てられる場合と切り捨てられない場合があります。

返品

プロバイダーが最近クラッシュした場合に、ファイルまたは null を指す新しい ParcelFileDescriptor を返します。 この記述子はユーザーが所有しており、完了したらそれを閉じる責任があります。

属性

例外

URI の下にファイルが存在しない場合、またはモードが無効な場合は、FileNotFoundException をスローします。

注釈

生ファイル記述子を開いて、URI の下のデータにアクセスします。 これは #openAssetFileDescriptor(Uri, String)に似ていますが、基になる ContentProvider#openFile ContentProvider.openFile()} メソッドを使用するため、 <em>not</em> は、ファイルのサブセクションを返すプロバイダーと連携します。 可能な限り、 #openAssetFileDescriptor(Uri, String)を使用する必要があります。 プロバイダーがファイルのサブセクションを返すと、FileNotFoundException 例外が発生します。

<h5>次の URI スキームを受け取ります:</h5><ul><li>content (#SCHEME_CONTENT)</li><li>file (#SCHEME_FILE)</li></ul>

これらのスキームの詳細については、 #openAssetFileDescriptor(Uri, String) を参照してください。

排他的な "r" モードまたは "w" モードで開く場合、返される ParcelFileDescriptor は、データのストリーミングを有効にするパイプまたはソケットのペアにすることができます。 "rw" モードで開くということは、シークをサポートするディスク上のファイルを意味します。 可能であれば、常に排他モードを使用して、基になる ContentProvider を最も柔軟にします。

ファイルを記述していて、プロバイダーにエラーを伝える必要がある場合は、 ParcelFileDescriptor#closeWithError(String)を使用します。

Javaドキュメント。

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

こちらもご覧ください

  • <xref:Android.Content.ContentResolver.OpenAssetFileDescriptor(Android.Net.Uri%2c+System.String)>

適用対象

OpenFileDescriptor(Uri, String, CancellationSignal)

生ファイル記述子を開いて、URI の下のデータにアクセスします。

[Android.Runtime.Register("openFileDescriptor", "(Landroid/net/Uri;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/os/ParcelFileDescriptor;", "")]
public Android.OS.ParcelFileDescriptor? OpenFileDescriptor(Android.Net.Uri uri, string mode, Android.OS.CancellationSignal? cancellationSignal);
[<Android.Runtime.Register("openFileDescriptor", "(Landroid/net/Uri;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/os/ParcelFileDescriptor;", "")>]
member this.OpenFileDescriptor : Android.Net.Uri * string * Android.OS.CancellationSignal -> Android.OS.ParcelFileDescriptor

パラメーター

uri
Uri

開く目的の URI。

mode
String

ファイル モードの文字列形式。 "r"、"w"、"wt"、"wa"、"rw"、または "rwt" を指定できます。 これらの正確な実装は、プロバイダーの実装ごとに異なる場合があることに注意してください。たとえば、"w" は切り捨てられる場合と切り捨てられない場合があります。

cancellationSignal
CancellationSignal

進行中の操作を取り消すシグナル。存在しない場合は null。 操作が取り消されると、 OperationCanceledException がスローされます。

返品

プロバイダーが最近クラッシュした場合に、ファイルまたは null を指す新しい ParcelFileDescriptor を返します。 この記述子はユーザーが所有しており、完了したらそれを閉じる責任があります。

属性

例外

URI の下にファイルが存在しない場合、またはモードが無効な場合は、FileNotFoundException をスローします。

注釈

生ファイル記述子を開いて、URI の下のデータにアクセスします。 これは #openAssetFileDescriptor(Uri, String)に似ていますが、基になる ContentProvider#openFile ContentProvider.openFile()} メソッドを使用するため、 <em>not</em> は、ファイルのサブセクションを返すプロバイダーと連携します。 可能な限り、 #openAssetFileDescriptor(Uri, String)を使用する必要があります。 プロバイダーがファイルのサブセクションを返すと、FileNotFoundException 例外が発生します。

<h5>次の URI スキームを受け取ります:</h5><ul><li>content (#SCHEME_CONTENT)</li><li>file (#SCHEME_FILE)</li></ul>

これらのスキームの詳細については、 #openAssetFileDescriptor(Uri, String) を参照してください。

排他的な "r" モードまたは "w" モードで開く場合、返される ParcelFileDescriptor は、データのストリーミングを有効にするパイプまたはソケットのペアにすることができます。 "rw" モードで開くということは、シークをサポートするディスク上のファイルを意味します。 可能であれば、常に排他モードを使用して、基になる ContentProvider を最も柔軟にします。

ファイルを記述していて、プロバイダーにエラーを伝える必要がある場合は、 ParcelFileDescriptor#closeWithError(String)を使用します。

Javaドキュメント。

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

こちらもご覧ください

  • <xref:Android.Content.ContentResolver.OpenAssetFileDescriptor(Android.Net.Uri%2c+System.String)>

適用対象