buffer

非推奨を表示

*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。

バッファーは、固定サイズの変更可能なメモリのブロックを表示するオブジェクトです。バッファーライブラリは、バッファーオブジェクトの作成と操作を提供し、グローバル buffer 変数内のすべての機能を提供します。

バッファーは、低レベルのバイナリデータストラクチャーとして使用されることを目的としています、string.pack()string.unpack() の使用を代替します。バッファーの使用ケースは、既存のバイナリ形式を読み取り、書き込み、サーバル化し、ユーザーのメモリタイプを

Roblox API を通過すると、バッファーオブジェクトの識別子は保持されず、ターゲットはカスタムイベントを通じてバッファーオブジェクトを受信します。他の制限と同様、同じバッファーオブジェクトを複数の Actor スクリプト (パラレル Luau) から使用することはできません。

多くの関数は、バッファーの開始時点からオフセットを受け取ります。バッファーメモリブロックの開始時点から 0 オフセットです。すべてのオフセット、カウント、サイズは、0 からのオフセットです。バッファーメモリブロックのアクセスに使用される読み取りまたは書き込みオペレーションのオフセットは、オーバーライドされている場

整数と浮動値を使用する read および write メソッドは、小さなエンディアン エンコードを使用します。

概要

関数

  • バッファーを作成します。

  • 弦楽器からバッファーを作成します。

  • バッファーを文字列に変換します。

  • バッファーのサイズをバイト単位で返します。

  • readi8(b : buffer,offset : number):number

    バッファーから 8 ビットのサインインテリジェントを読み込みます。

  • readu8(b : buffer,offset : number):number

    バッファーから 8 ビットの未サインインテリジェントを読み込みます。

  • readi16(b : buffer,offset : number):number

    バッファーから 16 ビットのサインインテリジェントを読み込みます。

  • readu16(b : buffer,offset : number):number

    バッファーから 16 ビットのサインなしの整数を読み取ります。

  • readi32(b : buffer,offset : number):number

    バッファーから 32 ビットのサインインテリジェントを読み込みます。

  • readu32(b : buffer,offset : number):number

    バッファーから 32 ビットの未サインインテリジェントを読み込みます。

  • readf32(b : buffer,offset : number):number

    バッファから32ビットのフローティングポイントの値を読み取ります。

  • readf64(b : buffer,offset : number):number

    バッファから64ビットのフローティングポイントの値を読み取ります。

  • writei8(b : buffer,offset : number,value : number):void

    バッファーに 8 ビットのサインインテリジェントを書き込みます。

  • writeu8(b : buffer,offset : number,value : number):void

    バッファーに 8 ビットのサインなしの整数を書き込みます。

  • writei16(b : buffer,offset : number,value : number):void

    バッファーに 16 ビットのサインインターフォーラムを書き込みます。

  • writeu16(b : buffer,offset : number,value : number):void

    バッファーに 16 ビットのサインなしの整数を書き込みます。

  • writei32(b : buffer,offset : number,value : number):void

    バッファーに 32 ビットのサインインテリジェントを書き込みます。

  • writeu32(b : buffer,offset : number,value : number):void

    バッファーに 32 ビットのサインなしの整数を書き込みます。

  • writef32(b : buffer,offset : number,value : number):void

    バッファーに 32 ビットのフロートポイント値を書き込みます。

  • writef64(b : buffer,offset : number,value : number):void

    バッファーに 64 ビットのフロートポイント値を書き込みます。

  • readstring(b : buffer,offset : number,count : number):string

    バッファーから文字列を読み取ります。

  • writestring(b : buffer,offset : number,value : string,count : number?):void

    バッファーに文字列を書き込みます。

  • copy(target : buffer,targetOffset : number,source : buffer,sourceOffset : number?,count : number?):void

    バッファー間のコピーバイト。

  • fill(b : buffer,offset : number,value : number,count : number?):void

    バッファーメモリの領域を 8 ビットのサインなしの整数値に設定します。

関数

create

リクエストされたサイズのバッファーをすべてのバイトが 0 に初期化されている状態で作成します。サイズ制限は 1 GiB、または 1,073,741,824バイトです。メモリが不足しているデバイスの場合は、より大きなバッファーが割り当てられない可能性があります。

パラメータ

size: number

バッファーのサイズ。

戻り値

fromstring

バッファーをストリン文字列の内容に初期化します。バッファーのサイズは、ストリン文字列の長さに等しいです。

パラメータ

str: string

戻り値

tostring

バッファーデータを文字列楽器として返します。

パラメータ

戻り値

バッファーのサイズをバイト単位で返します。

パラメータ

戻り値

readi8

オフセットのバイトを 8 ビットのサインインタープリターとして再解釈し、数値に変換します。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

戻り値

readu8

オフセットのバイトを 8 ビットの未サインインタープリティング整数として再解釈し、数値に変換します。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

戻り値

readi16

オフセットのバイトを 16 ビットのサインインタープリターとして再解釈し、数値に変換します。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

戻り値

readu16

オフセットのバイトを 16 ビットの未サインインタープリティング整数として再解釈し、数値に変換します。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

戻り値

readi32

オフセットのバイトを 32 ビットのサインインタープリターとして再解釈し、数値に変換します。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

戻り値

readu32

オフセットのバイトを 32 ビットの未サインインタープリトした整数として再解釈し、数値に変換します。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

戻り値

readf32

オフセットのバイトを 32 ビットのフローティングポイント値として再解釈し、数値に変換します。浮き小数値が NaN (数字ではありません) を表示するビットパターに一致する場合、返された値は別の静的 NaN 表現に変換されます。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

戻り値

readf64

オフセットのバイトを 64 ビットのプライマリポイント値として再解釈し、数値に変換します。浮き小数値が NaN (数字ではありません) を表示するビークンパターンに一致する場合、返される値は別の静的 NaN 表現に変換される可能性があります。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

戻り値

writei8

void

数値を 8 ビットのサインインターバルに変換し、単一バイトを書き込みます。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

value: number

範囲の整数数 [–128、127]。

戻り値

void

writeu8

void

数値を 8 ビットのサイン付き整数 に変換し、単一バイトを書き込みます。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

value: number

範囲 [0, 255] の整数数。

戻り値

void

writei16

void

数を 16 ビットのサインインタープリトして変換し、個々のバイトとして再解釈することでバッファーにデータを書き込みます。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

value: number

範囲内の整数番号 [-32,768、32,767]。

戻り値

void

writeu16

void

数値を 16 ビットのサイン付き整数に変換し、個々のバイトとして再解読することでバッファーにデータを書き込みます。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

value: number

範囲 [0, 65,536] の整数数。

戻り値

void

writei32

void

数値を 32 ビットのサインインタープリトして個々のバイトとして再解読することでバッファーに書き込みます。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

value: number

範囲 [-2,147,483,648, 2,147,483,647] の整数数。

戻り値

void

writeu32

void

数値を 32 ビットのサイン付き整数に変換し、個々のバイトとして再解読することでバッファーに書き込みます。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

value: number

範囲 [0, 4,294,967,295] の整数数。

戻り値

void

writef32

void

数値を 32 ビットのフロートポイント値に変換し、個々のバイトとして再解釈することでバッファーにデータを書き込みます。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

value: number

単一精度のフロートポイント数。

戻り値

void

writef64

void

数値を 64 ビットのフロートポイントの値に変換し、個々のバイトとして再解釈することでバッファーにデータを書き込みます。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

value: number

2 精度のフロートポイント数。

戻り値

void

readstring

指定された count バッファーから、長さの offset 文字列を読み込みます。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

count: number

既読み込む長さ。

戻り値

writestring

void

指定された offset 以外のオプション count は、count バイトが取得されます。

パラメータ

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

value: string

書き込むデータ。

count: number

文字列から取得するバイト数。この値は、文字列の長さより大きな値にはできません。

戻り値

void

copy

void

コピー count バイトを source から開始して sourceOffset で 1> target1> に 4> targetOffset4> 。

source と target が同じである可能性があります。同じバッファー内の複数の重複する領域をコピーすると、ソース領域が一時バッファーにコピーされ、そのバッファーがターゲットにコピーされます。

パラメータ

target: buffer

データをコピーするバッファー。

targetOffset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

source: buffer

バッファーにデータを取り込む。

sourceOffset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

既定値: 0
count: number

コピーするバイト数。オミットすると、source のデータ全体が sourceOffset から取得されます。

戻り値

void

fill

void

バッファーの開始時に指定された count バイトの offset に設定されます。

パラメータ

バッファーを使用してデータを書き込みます。

offset: number

バッファーメモリの開始時点からオフセットします。開始時点は 0 から始まります。

value: number

範囲 [0, 255] の整数数。

count: number

書き込むバイト数。オミットすると、指定されたオフセット後のすべてのバイトが設設定するされます。

戻り値

void