IBuffer インターフェイス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
public interface class IBuffer
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(2421821408, 48211, 4575, 140, 73, 0, 30, 79, 198, 134, 218)]
struct IBuffer
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.Guid(2421821408, 48211, 4575, 140, 73, 0, 30, 79, 198, 134, 218)]
public interface IBuffer
Public Interface IBuffer
- 派生
- 属性
Windows の要件
デバイス ファミリ |
Windows 10 (10.0.10240.0 で導入)
|
API contract |
Windows.Foundation.UniversalApiContract (v1.0 で導入)
|
例
このコード例では、UTF-8 バイトの IBuffer から文字列を取得する方法を示します。
public string RetrieveStringFromUtf8IBuffer(Windows.Storage.Streams.IBuffer theBuffer)
{
using (var dataReader = Windows.Storage.Streams.DataReader.FromBuffer(theBuffer))
{
dataReader.UnicodeEncoding = Windows.Storage.Streams.UnicodeEncoding.Utf8;
return dataReader.ReadString(theBuffer.Length);
}
}
注釈
このインターフェイスは、内容を保持しながらバッファーのサイズを変更するために使用されます。 C++/WinRT クラスが を実装し、サイズ変更を IBuffer
必要としない場合、またはサイズ変更をサポートしていない場合は、 hresult_not_implementedをスローする必要があります。
詳細については、「ファイルの 作成、書き込み、読み取り」を参照してください。バッファーを使用してファイルにバイトを読み書きする方法を示 します。
WriteableBitmap.PixelBuffer は、直接書き込むことができない IBuffer を返すプロパティの例です。 バッファー内の基になるピクセル コンテンツへの書き込みを示す言語固有のコード例については、そのトピックを参照してください。
C++/WinRT 拡張機能関数
Note
拡張関数は、特定のWindows ランタイム API の C++/WinRT プロジェクション型に存在します。 たとえば、 winrt::Windows::Foundation::IAsyncAction は 、IAsyncAction の C++/WinRT プロジェクションの種類です。 拡張関数は、実際のWindows ランタイム型のアプリケーション バイナリ インターフェイス (ABI) サーフェスの一部ではありません。そのため、Windows ランタイム API のメンバーとして一覧表示されません。 ただし、任意の C++/WinRT プロジェクト内から呼び出すことができます。 Windows ランタイム API を拡張する C++/WinRT 関数に関するページを参照してください。
uint8_t* data() const;
バッファー内に保持されているデータへのポインターを返します。
プロパティ
Capacity |
バッファーが保持できる最大バイト数を取得します。 |
Length |
バッファーで現在使用されているバイト数を取得します。 |