IDataInput インターフェイス

定義

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

[Android.Runtime.Register("java/io/DataInput", "", "Java.IO.IDataInputInvoker")]
public interface IDataInput : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("java/io/DataInput", "", "Java.IO.IDataInputInvoker")>]
type IDataInput = interface
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
派生
属性
実装

注釈

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。 変更された UTF-8 形式のデータから String を再構築するための機能もあります。

通常、このインターフェイス内のすべての読み取りルーチンに当てはまります。目的のバイト数が読み取られた前にファイルの末尾に達すると、 EOFException ( IOExceptionの一種) がスローされます。 ファイルの末尾以外の理由でバイトを読み取ることができない場合は、EOFException以外のIOExceptionがスローされます。 特に、入力ストリームが閉じられた場合、 IOException がスローされる可能性があります。

<h3>"modified-utf-8">Modified UTF-8</h3>

DataInput インターフェイスと DataOutput インターフェイスの実装は、UTF-8 のわずかな変更である形式で Unicode 文字列を表します。 (標準 UTF-8 形式については、「 3.9 Unicode標準バージョン 4.0 の Unicode エンコード 形式」を参照してください)

<ul><li>'\u005Cu007F''\u005Cu0001'範囲の文字は、1 バイトで表されます。 <li> null 文字'\u005Cu0000''\u005Cu07FF''\u005Cu0080'範囲内の文字は、バイトのペアで表されます。 <li>'\u005CuFFFF''\u005Cu0800'範囲の文字は 3 バイトで表されます。 </ul>

<table class="plain" style="margin-left:2em;"><caption> UTF-8 値のコード化</caption><thead><tr><th scope="col" rowspan="2">Value</th><th scope="col" rowspan="2">Byte</th><th scope="col" colspan="8" id=""bit_a">Bit Values</th></tr><tr><!-- Value --><!-- Byte --><th scope="col" style="width:3em"> 7 </th><th scope="col" style="width:3em"> 6 </th><th scope="col" style="width:3em"> 5 </th><th scope="col" style="width:3em"> 4 </th><th scope="col" style="width:3em"> 3 </th><th scope="col" style="width:3em">>< 2 </thth scope="col" style="width:3em"> 1 </th><th scope="col" style="width:3em"> 0 </th></thead><tbody><tr><th scope="row" style="text-align:left;font-weight:normal">\u005Cu0001 to \u005Cu007F</th><th scope="row" style="font-weight:normal; text-align:center"> 1 </th><td style="text-align:center">0 <td colspan="7" style="text-align:right; padding-right:6em">bits 6-0 </tr><tr><th scope="row" rowspan="2" style="text-align:left; font-weight:normal">\u005Cu0000,<br>\u005Cu0080 to \u005Cu07FF</th><th scope="row" style="font-weight:normal;text-align:center"> 1 </th><td style="text-align:center">1 <td style="text-align:center">1 <td style="text-align:center">0 <td colspan="5" style="text-align:right; padding-right:6em">bits 10-6 </tr><tr><!-- (value) --><th scope="row" style="font-weight:normal; text-align:center"> 2 </th><td style="text-align:center">1 <td style="text-align:center">0 <td colspan="6" style="text-align:right; padding-right:6em">bits 5-0 </tr><tr><th scope="row" rowspan="3" style="text-align:left; font-weight:normal">\u005Cu0800 to \u005CuFFFF</th><th scope="row" style="font-weight:normal; text-align:normal; text-align:center"> 1 </th><td style="text-align:center">1 <td style="text-align:center">1 <td style="text-align:center">1 <td style="text-align:center">0 <td colspan="4" style="text-align:right; padding-right:6em">bits 15-12 </tr><tr><!-- (value) --><th scope="row" style="font-weight:normal; text-align:center"> 2 </th><td style="text-align:center">1 <td style="text-align:center">0 <td colspan="6" style="text-align:right; padding-right:6em">bits 11-6</tr><tr><!-- (値) --><th scope="row" style="font-weight:normal; text-align:center"> 3 </th><td style="text-align:center">1 <td style="text-align:center">0 <td colspan="6" style="text-align:right; padding-right:6em">bits 5-0 </tr></tbody></table>

この形式と標準 UTF-8 形式の違いは次のとおりです。 <ul><li> null バイト '\u005Cu0000' は 1 バイトではなく 2 バイト形式でエンコードされるため、エンコードされた文字列に null が埋め込まれることはありません。 <li> 1 バイト、2 バイト、および 3 バイトの形式が使用されます。 <li>Supplementary 文字はサロゲート ペアの形式で表されます。 </ul>

1.0 で追加されました。

Javaドキュメント。

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

プロパティ

名前 説明
Handle

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

(継承元 IJavaObject)
JniIdentityHashCode

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

(継承元 IJavaPeerable)
JniManagedPeerState

マネージド ピアの状態。

(継承元 IJavaPeerable)
JniObjectReferenceControlBlock

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

(継承元 IJavaPeerable)
JniPeerMembers

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

(継承元 IJavaPeerable)
PeerReference

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

(継承元 IJavaPeerable)

メソッド

名前 説明
Disposed()

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

(継承元 IJavaPeerable)
DisposeUnlessReferenced()

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

(継承元 IJavaPeerable)
Finalized()

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

(継承元 IJavaPeerable)
ReadBoolean()

1 つの入力バイトを読み取り、そのバイトが 0 以外の場合は true を返し、そのバイトが 0 の場合は false 返します。

ReadByte()

1 つの入力バイトを読み取って返します。

ReadChar()

2 つの入力バイトを読み取り、 char 値を返します。

ReadDouble()

8 つの入力バイトを読み取り、 double 値を返します。

ReadFloat()

4 つの入力バイトを読み取り、 float 値を返します。

ReadFully(Byte[], Int32, Int32)

入力ストリームから len バイトを読み取ります。

ReadFully(Byte[])

入力ストリームからバイト数を読み取り、バッファー配列 bに格納します。

ReadInt()

4 つの入力バイトを読み取り、 int 値を返します。

ReadLine()

入力ストリームから次のテキスト行を読み取ります。

ReadLong()

8 つの入力バイトを読み取り、 long 値を返します。

ReadShort()

2 つの入力バイトを読み取り、 short 値を返します。

ReadUnsignedByte()

1 つの入力バイトを読み取り、0 で拡張して int型にし、結果を返します。したがって、範囲 0255します。

ReadUnsignedShort()

2 つの入力バイトを読み取り、655350範囲内のint値を返します。

ReadUTF()

変更された UTF-8 形式を使用してエンコードされた文字列を読み取ります。

SetJniIdentityHashCode(Int32)

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

(継承元 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

(継承元 IJavaPeerable)
SetPeerReference(JniObjectReference)

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

(継承元 IJavaPeerable)
SkipBytes(Int32)

入力ストリームから n バイトのデータをスキップして、スキップされたバイトを破棄します。

UnregisterFromRuntime()

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

(継承元 IJavaPeerable)

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

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

JavaAs<TResult>(IJavaPeerable)

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

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

ReadBooleanAsync(IDataInput)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

ReadByteAsync(IDataInput)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

ReadCharAsync(IDataInput)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

ReadDoubleAsync(IDataInput)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

ReadFloatAsync(IDataInput)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

ReadFullyAsync(IDataInput, Byte[], Int32, Int32)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

ReadFullyAsync(IDataInput, Byte[])

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

ReadIntAsync(IDataInput)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

ReadLineAsync(IDataInput)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

ReadLongAsync(IDataInput)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

ReadShortAsync(IDataInput)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

ReadUnsignedByteAsync(IDataInput)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

ReadUnsignedShortAsync(IDataInput)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

ReadUTFAsync(IDataInput)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

SkipBytesAsync(IDataInput, Int32)

DataInput インターフェイスは、バイナリ ストリームからバイトを読み取り、Javaのいずれかのプリミティブ型のデータから再構築するために提供します。

TryJavaCast<TResult>(IJavaPeerable, TResult)

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

適用対象