English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

NodeJS 基礎チュートリアル

NodeJS Express.js

NodeJS バッファ&URL;

NodeJS MySql

NodeJS MongoDB

NodeJS ファイル(FS)

NodeJS その他

Node.js Buffer(バッファ) – 生成、書き込み、読み取り

Node.jsバッファ

Node.jsバッファ– Node.jsバッファはクラスであり、8ビットバイトストリームの処理と使用をサポートします。TCPデータストリームやファイルシステム操作の処理中に通常、8ビットバイトストリームが現れます。

Node.js Vにバッファに割り当てられた原始メモリ8スタックメモリの外です。

このチュートリアルでは、以下の方法を学びます。

  • バッファの生成

  • データをバッファに書き込みます。

  • バッファからデータを読み取ります。

Node.js – バッファの生成

Node.jsではバッファの生成方法が多くあります。それらを一つずつ研究します。

指定長さのバッファ

指定長さのバッファを生成するには、Buffer.allocUnsafe(int)メソッドを使用してください。

構文

Buffer.allocUnsafe(bufferLength);
const buf1 = Buffer.allocUnsafe(10);

bufferLengthは整数で、生成するバッファの長さを指定します。

生成されたバッファは初期化されていないため、ゴミ値を含む可能性があります。fill()またはwrite()メソッドを使用してゴミ値をオーバーライドできます。

指定長さのゼロフィルタリングバッファ

指定長さのゼロフィルタリングバッファを生成するには、Buffer.alloc(int)メソッドを使用してください。
構文

Buffer.alloc(bufferLength);
const buf1 = Buffer.alloc(10);

 bufferLengthは整数で、作成するバッファの長さを指定します。バッファは全てのメモリ位置を0で埋め尽くします。

Buffer.alloc()はBuffer.allocUnsafe()より遅いです。

指定された長さのバッファ、指定された値で埋め尽くす

指定された長さで値を埋めたバッファを作成するために、Buffer.alloc(int,int)メソッドを使用してください。
構文
Buffer.alloc(bufferLength, value);
 

  const buf1 = Buffer.allocUnsafe(10, 3);

 bufferLengthは整数で、作成するバッファの長さを指定します。バッファはvalueで埋め尽くされたすべてのメモリ位置を含みます。

Node.js – バッファに書き込む

Bufferクラスには、さまざまな形式のデータをバッファに書き込む方法が多くあります。このセクションでは、バッファに文字列を書き込む方法を学びます。
文字列をバッファに書き込むために、Buffer.writeメソッドを使用してください。
構文

Buffer.write(string[, offset[, length]][, encoding]);
  const buf1 = Buffer.allocUnsafe(100);
 
  const len = buf1.write('welcomeuser',2,5,'utf8');

offsetから始まる文字列、指定された長さの文字数が指定されたエンコーディング形式でバッファに書き込まれます。

write()メソッドは、書き込んだバッファのバイト数を返します。

Node.js – バッファから読み取る

バッファからバイトを読み取るために、Buffer.valuesメソッドを使用してください。
構文

Buffer.values();

bufを生成し、返します。1バイト値のイテレータ。Bufferを使用するfor..of文では、自動的にこの関数が呼び出されます。

  const buf1 = Buffer.allocUnsafe(11);
 
  const len = buf1.write('welcomeuser');
 
  for(const byt of buf1.values()){
    console.log(byt);
  }

出力結果

$ node read-buffer.js  
119
101
108
99
111
109
101
117
115
101
114

結論:

このNode.jsチュートリアルで Node.js バッファ内、Node.jsでバッファを生成、書き込む、読み取る方法について学びました。次のチュートリアルでは、バッファに関する面白い操作を学びます。