對象Buffer
二進位資料緩存對象,用於io讀寫的資料處理
Buffer 物件為全域基礎類,在任何時候都可以直接以new Buffer(...) 建立:
1var buf = new Buffer();
繼承關係
建構函數
Buffer
緩存物件建構函數
1new Buffer(Array datas);
呼叫參數:
- datas: Array, 初始化資料數組
緩存物件建構函數
1
2
3new Buffer(ArrayBuffer datas,
Integer byteOffset = 0,
Integer length = -1);
呼叫參數:
- datas: ArrayBuffer, 初始化資料數組
- byteOffset: Integer, 指定資料起始位置,起始為 0
- length: Integer, 指定資料長度,起始位元-1,表示剩餘所有數據
緩存物件建構函數
1
2
3new Buffer(Uint8Array datas,
Integer byteOffset = 0,
Integer length = -1);
呼叫參數:
- datas: Uint8Array, 初始化資料數組
- byteOffset: Integer, 指定資料起始位置,起始為 0
- length: Integer, 指定資料長度,起始位元-1,表示剩餘所有數據
緩存物件建構函數
1
2new Buffer(String str,
String codec = "utf8");
呼叫參數:
- str: String, 初始化字串,字串將以utf-8 格式寫入,預設則建立空對象
- codec: String, 指定編碼格式,允許值為:"hex", "base32", "base58", "base64", "utf8", 或者iconv模組支援的字元集
緩存物件建構函數
1new Buffer(Integer size = 0);
呼叫參數:
- size: Integer, 初始化緩衝區大小
物件
二進位資料緩存對象,用於io讀寫的資料處理
1Buffer new Buffer;
靜態函數
alloc
分配一個指定長度的新快取區。如果大小為0,將會建立一個零長度的快取區。
1
2static Buffer Buffer.alloc(Integer size,
Integer fill = 0);
呼叫參數:
- size: Integer, 緩衝區的所需長度
- fill: Integer, 預先填入新緩衝區的值,可使用string/buffer/integer 值類型。預設值:0
回傳結果:
- Buffer, 填充好的新Buffer 對象
分配一個指定長度的新快取區。如果大小為0,將會建立一個零長度的快取區。
1
2
3static Buffer Buffer.alloc(Integer size,
String fill = "",
String codec = "utf8");
呼叫參數:
- size: Integer, 緩衝區的所需長度
- fill: String, 預先填入新緩衝區的值,可使用string/buffer/integer 值類型。預設值:0
- codec: String, 指定編碼格式,允許值為:"hex", "base32", "base58", "base64", "utf8", 或者iconv模組支援的字元集
回傳結果:
- Buffer, 填充好的新Buffer 對象
分配一個指定長度的新快取區。如果大小為0,將會建立一個零長度的快取區。
1
2static Buffer Buffer.alloc(Integer size,
Buffer fill);
呼叫參數:
- size: Integer, 緩衝區的所需長度
- fill: Buffer, 預先填入新緩衝區的值,可使用string/buffer/integer 值類型。預設值:0
回傳結果:
- Buffer, 填充好的新Buffer 對象
allocUnsafe
分配一個指定長度的新快取區。如果大小為0,將會建立一個零長度的快取區。
1static Buffer Buffer.allocUnsafe(Integer size);
呼叫參數:
- size: Integer, 緩衝區的所需長度
回傳結果:
- Buffer, 指定尺寸的新Buffer 對象
allocUnsafeSlow
分配一個指定長度的新快取區。如果大小為0,將會建立一個零長度的快取區。
1static Buffer Buffer.allocUnsafeSlow(Integer size);
呼叫參數:
- size: Integer, 緩衝區的所需長度
回傳結果:
- Buffer, 指定尺寸的新Buffer 對象
from
透過給定的陣列建立Buffer 對象
1static Buffer Buffer.from(Array datas);
呼叫參數:
- datas: Array, 初始化資料數組
回傳結果:
- Buffer, 返回Buffer 實例
透過其他Buffer 建立Buffer 對象
1
2
3static Buffer Buffer.from(Buffer buffer,
Integer byteOffset = 0,
Integer length = -1);
呼叫參數:
- buffer: Buffer, 給定Buffer 類型變數用於建立Buffer 對象
- byteOffset: Integer, 指定資料起始位置,起始為 0
- length: Integer, 指定資料長度,起始位元-1,表示剩餘所有數據
回傳結果:
- Buffer, 返回Buffer 實例
透過其他Buffer 建立Buffer 對象
1
2
3static Buffer Buffer.from(ArrayBuffer datas,
Integer byteOffset = 0,
Integer length = -1);
呼叫參數:
- datas: ArrayBuffer, 初始化資料數組
- byteOffset: Integer, 指定資料起始位置,起始為 0
- length: Integer, 指定資料長度,起始位元-1,表示剩餘所有數據
回傳結果:
- Buffer, 返回Buffer 實例
透過其他Buffer 建立Buffer 對象
1
2
3static Buffer Buffer.from(Uint8Array datas,
Integer byteOffset = 0,
Integer length = -1);
呼叫參數:
- datas: Uint8Array, 初始化資料數組
- byteOffset: Integer, 指定資料起始位置,起始為 0
- length: Integer, 指定資料長度,起始位元-1,表示剩餘所有數據
回傳結果:
- Buffer, 返回Buffer 實例
透過字串建立Buffer 對象
1
2static Buffer Buffer.from(String str,
String codec = "utf8");
呼叫參數:
- str: String, 初始化字串,字串將以utf-8 格式寫入,預設則建立空對象
- codec: String, 指定編碼格式,允許值為:"hex", "base32", "base58", "base64", "utf8", 或者iconv模組支援的字元集
回傳結果:
- Buffer, 返回Buffer 實例
concat
拼接多個快取區中的數據
1
2static Buffer Buffer.concat(Array buflist,
Integer cutLength = -1);
呼叫參數:
- buflist: Array, 待拼接的Buffer數組
- cutLength: Integer, 截取多少個Buffer對象
回傳結果:
- Buffer, 拼接後產生的新Buffer 對象
isBuffer
檢測給定的變數是否為Buffer 對象
1static Boolean Buffer.isBuffer(Value v);
呼叫參數:
- v: Value, 給定需要檢測的變數
回傳結果:
- Boolean, 傳入物件是否Buffer 對象
isEncoding
檢測編碼格式是否被支援
1static Boolean Buffer.isEncoding(String codec);
呼叫參數:
- codec: String, 待偵測的編碼格式
回傳結果:
- Boolean, 是否支持
byteLength
傳回字串的實際位元組長度
1
2static Integer Buffer.byteLength(String str,
String codec = "utf8");
呼叫參數:
- str: String, 待取位元組的字串,如果str為ArrayBuffer/TypedArray/DataView/Buffer 對象,則傳回它們的實際長度
- codec: String, 指定編碼格式,允許值為:"hex", "base32", "base58", "base64", "utf8", 或者iconv模組支援的字元集
回傳結果:
- Integer, 傳回實際位元組長度
傳回字串的實際位元組長度
1static Integer Buffer.byteLength(ArrayBuffer str);
呼叫參數:
- str: ArrayBuffer, 待取位元組的字串,如果str為ArrayBuffer/TypedArray/DataView/Buffer 對象,則傳回它們的實際長度
回傳結果:
- Integer, 傳回實際位元組長度
傳回字串的實際位元組長度
1static Integer Buffer.byteLength(Uint8Array str);
呼叫參數:
- str: Uint8Array, 待取位元組的字串,如果str 為ArrayBuffer/TypedArray/DataView/Buffer 對象,則傳回它們的實際長度
回傳結果:
- Integer, 傳回實際位元組長度
傳回字串的實際位元組長度
1static Integer Buffer.byteLength(Buffer str);
呼叫參數:
- str: Buffer, 待取位元組的字串,如果str為ArrayBuffer/TypedArray/DataView/Buffer 對象,則傳回它們的實際長度
回傳結果:
- Integer, 傳回實際位元組長度
compare
比較buf1 和buf2, 常用於Buffer 實例之間的排序. 該方式等價於buf1.compare(buf2).
1
2static Integer Buffer.compare(Buffer buf1,
Buffer buf2);
呼叫參數:
- buf1: Buffer, 待比較的buf
- buf2: Buffer, 待比較的buf
回傳結果:
- Integer, 返回比較位元組長度
成員屬性
length
Integer, 取得快取物件的尺寸
1readonly Integer Buffer.length;
成員函數
write
寫入快取物件指定字串,字串預設為utf-8,越界時只寫入部分數據
1
2
3
4Integer Buffer.write(String str,
Integer offset = 0,
Integer length = -1,
String codec = "utf8");
呼叫參數:
- str: String, 待寫入的字串
- offset: Integer, 寫入起始位置
- length: Integer, 寫入長度(單位位元組,預設值-1),未指定時為待寫入字串的長度
- codec: String, 指定編碼格式,允許值為:"hex", "base32", "base58", "base64", "utf8", 或者iconv模組支援的字元集
回傳結果:
- Integer, 寫入的資料位元組長度
寫入快取物件指定字串,字串預設為utf-8,越界時只寫入部分數據
1
2
3Integer Buffer.write(String str,
Integer offset = 0,
String codec = "utf8");
呼叫參數:
- str: String, 待寫入的字串
- offset: Integer, 寫入起始位置
- codec: String, 指定編碼格式,允許值為:"hex", "base32", "base58", "base64", "utf8", 或者iconv模組支援的字元集
回傳結果:
- Integer, 寫入的資料位元組長度
寫入快取物件指定字串,字串預設為utf-8,越界時只寫入部分數據
1
2Integer Buffer.write(String str,
String codec = "utf8");
呼叫參數:
- str: String, 待寫入的字串
- codec: String, 指定編碼格式,允許值為:"hex", "base32", "base58", "base64", "utf8", 或者iconv模組支援的字元集
回傳結果:
- Integer, 寫入的資料位元組長度
fill
為Buffer 物件填入指定內容數據
1
2
3Buffer Buffer.fill(Integer v,
Integer offset = 0,
Integer end = -1);
呼叫參數:
- v: Integer, 需要填充的數據,如果未指定offset 和end,將填充整個buffer
- offset: Integer, 填充起始位置
- end: Integer, 填充終止位置
回傳結果:
- Buffer, 傳回目前Buffer 對象
為Buffer 物件填入指定內容數據
1
2
3Buffer Buffer.fill(Buffer v,
Integer offset = 0,
Integer end = -1);
呼叫參數:
- v: Buffer, 需要填充的數據,如果未指定offset 和end,將填充整個buffer
- offset: Integer, 填充起始位置
- end: Integer, 填充終止位置
回傳結果:
- Buffer, 傳回目前Buffer 對象
為Buffer 物件填入指定內容數據
1
2
3
4Buffer Buffer.fill(String v,
Integer offset = 0,
Integer end = -1,
String codec = "utf8");
呼叫參數:
- v: String, 需要填充的數據,如果未指定offset 和end,將填充整個buffer
- offset: Integer, 填充起始位置
- end: Integer, 填充終止位置
- codec: String, 指定編碼格式,允許值為:"hex", "base32", "base58", "base64", "utf8", 或者iconv模組支援的字元集
回傳結果:
- Buffer, 傳回目前Buffer 對象
為Buffer 物件填入指定內容數據
1
2
3Buffer Buffer.fill(String v,
Integer offset,
String codec);
呼叫參數:
- v: String, 需要填充的數據,如果未指定offset 和end,將填充整個buffer
- offset: Integer, 填充起始位置
- codec: String, 指定編碼格式,允許值為:"hex", "base32", "base58", "base64", "utf8", 或者iconv模組支援的字元集
回傳結果:
- Buffer, 傳回目前Buffer 對象
為Buffer 物件填入指定內容數據
1
2Buffer Buffer.fill(String v,
String codec);
呼叫參數:
- v: String, 需要填充的數據,如果未指定offset 和end,將填充整個buffer
- codec: String, 指定編碼格式,允許值為:"hex", "base32", "base58", "base64", "utf8", 或者iconv模組支援的字元集
回傳結果:
- Buffer, 傳回目前Buffer 對象
copy
從來源緩存物件區域拷貝資料到目標快取物件區域
1
2
3
4Integer Buffer.copy(Buffer targetBuffer,
Integer targetStart = 0,
Integer sourceStart = 0,
Integer sourceEnd = -1);
呼叫參數:
- targetBuffer: Buffer, 目標緩存對象
- targetStart: Integer, 目標快取物件開始拷貝位元組位置,預設為 0
- sourceStart: Integer, 來源快取物件開始位元組位置, 預設為 0
- sourceEnd: Integer, 來源快取物件結束位元組位置, 預設為-1,表示來源資料長度
回傳結果:
- Integer, 拷貝的資料位元組長度
set
從來源緩存物件區域拷貝資料到目標快取物件區域
1
2Integer Buffer.set(Buffer src,
Integer start);
呼叫參數:
- src: Buffer, 目標緩存對象
- start: Integer, 來源快取物件開始位元組位置
回傳結果:
- Integer, 拷貝的資料位元組長度
readUInt8
從快取物件讀取一個8 位元無符號整數數值
1Integer Buffer.readUInt8(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Integer, 傳回讀取的整數數值
readUInt16LE
從快取物件讀取一個16 位元無符號整數數值,以低位元組序的儲存方式
1Integer Buffer.readUInt16LE(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Integer, 傳回讀取的整數數值
readUInt16BE
從快取物件讀取一個16 位元無符號整數數值,以高位元組序的儲存方式
1Integer Buffer.readUInt16BE(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Integer, 傳回讀取的整數數值
readUInt32LE
從快取物件讀取一個32 位元無符號整數數值,以低位元組序的儲存方式
1Number Buffer.readUInt32LE(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Number, 傳回讀取的整數數值
readUInt32BE
從快取物件讀取一個32 位元無符號整數數值,以高位元組序的儲存方式
1Number Buffer.readUInt32BE(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Number, 傳回讀取的整數數值
readUIntLE
從快取物件讀取一個無符號整數數值,最大支援48 位,以低字節序的儲存方式
1
2Number Buffer.readUIntLE(Integer offset = 0,
Integer byteLength = 6);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
- byteLength: Integer, 指定讀取的位元組數,預設6 個位元組
回傳結果:
- Number, 傳回讀取的整數數值
readUIntBE
從快取物件讀取一個無符號整數數值,最大支援48 位,以高位元組序的儲存方式
1
2Number Buffer.readUIntBE(Integer offset = 0,
Integer byteLength = 6);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
- byteLength: Integer, 指定讀取的位元組數,預設6 個位元組
回傳結果:
- Number, 傳回讀取的整數數值
readInt64LE
從快取物件讀取一個64 位元整數數值,以低位元組序的儲存方式
1Long Buffer.readInt64LE(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Long, 傳回讀取的整數數值
readInt64BE
從快取物件讀取一個64 位元整數數值,以高位元組序的儲存方式
1Long Buffer.readInt64BE(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Long, 傳回讀取的整數數值
readInt8
從快取物件讀取一個8 位元整數數值
1Integer Buffer.readInt8(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Integer, 傳回讀取的整數數值
readInt16LE
從快取物件讀取一個16 位元整數數值,以低位元組序的儲存方式
1Integer Buffer.readInt16LE(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Integer, 傳回讀取的整數數值
readInt16BE
從快取物件讀取一個16 位元整數數值,以高位元組序的儲存方式
1Integer Buffer.readInt16BE(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Integer, 傳回讀取的整數數值
readInt32LE
從快取物件讀取一個32 位元整數數值,以低位元組序的儲存方式
1Integer Buffer.readInt32LE(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Integer, 傳回讀取的整數數值
readInt32BE
從快取物件讀取一個32 位元整數數值,以高位元組序的儲存方式
1Integer Buffer.readInt32BE(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Integer, 傳回讀取的整數數值
readIntLE
從快取物件讀取一個整數數值,最大支援48 位,以低字節序的儲存方式
1
2Number Buffer.readIntLE(Integer offset = 0,
Integer byteLength = 6);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
- byteLength: Integer, 指定讀取的位元組數,預設6 個位元組
回傳結果:
- Number, 傳回讀取的整數數值
readIntBE
從快取物件讀取一個整數數值,最大支援48 位,以高字節序的儲存方式
1
2Number Buffer.readIntBE(Integer offset = 0,
Integer byteLength = 6);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
- byteLength: Integer, 指定讀取的位元組數,預設6 個位元組
回傳結果:
- Number, 傳回讀取的整數數值
readFloatLE
從快取物件讀取一個浮點數,以低位元組序的儲存方式
1Number Buffer.readFloatLE(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Number, 傳回讀取的浮點數
readFloatBE
從快取物件讀取一個浮點數,以高位元組序的儲存方式
1Number Buffer.readFloatBE(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Number, 傳回讀取的浮點數
readDoubleLE
從快取物件讀取一個雙精度浮點數,以低位元組序的儲存方式
1Number Buffer.readDoubleLE(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Number, 傳回讀取的雙精度浮點數
readDoubleBE
從快取物件讀取一個雙精度浮點數,以高位元組序的儲存方式
1Number Buffer.readDoubleBE(Integer offset = 0);
呼叫參數:
- offset: Integer, 指定讀取的起始位置,預設為 0
回傳結果:
- Number, 傳回讀取的雙精度浮點數
writeUInt8
寫入一個8 位元無符號整數數值
1
2Integer Buffer.writeUInt8(Integer value,
Integer offset = 0);
呼叫參數:
- value: Integer, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
writeUInt16LE
寫入一個16 位元無符號整數數值,以低位元組序的儲存方式
1
2Integer Buffer.writeUInt16LE(Integer value,
Integer offset = 0);
呼叫參數:
- value: Integer, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
writeUInt16BE
寫入一個16 位元無符號整數數值,以高位元組序的儲存方式
1
2Integer Buffer.writeUInt16BE(Integer value,
Integer offset = 0);
呼叫參數:
- value: Integer, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
writeUInt32LE
向快取物件寫入一個32 位元無符號整數數值,以低位元組序的儲存方式
1
2Integer Buffer.writeUInt32LE(Long value,
Integer offset = 0);
呼叫參數:
- value: Long, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
writeUInt32BE
向快取物件寫入一個32 位元無符號整數數值,以高位元組序的儲存方式
1
2Integer Buffer.writeUInt32BE(Long value,
Integer offset = 0);
呼叫參數:
- value: Long, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
writeUIntLE
向緩存物件寫入一個無符號整數數值,最大支援48 位,以低字節序的儲存方式
1
2
3Integer Buffer.writeUIntLE(Long value,
Integer offset = 0,
Integer byteLength = 6);
呼叫參數:
- value: Long, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
- byteLength: Integer, 指定寫入的位元組數,預設6 個位元組
回傳結果:
- Integer, offset 加上寫入的位元組數
writeUIntBE
向緩存物件寫入一個無符號整數數值,最大支援48 位,以高字節序的儲存方式
1
2
3Integer Buffer.writeUIntBE(Long value,
Integer offset = 0,
Integer byteLength = 6);
呼叫參數:
- value: Long, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
- byteLength: Integer, 指定寫入的位元組數,預設6 個位元組
回傳結果:
- Integer, offset 加上寫入的位元組數
writeInt8
向快取物件寫入一個8 位元整數數值
1
2Integer Buffer.writeInt8(Integer value,
Integer offset = 0);
呼叫參數:
- value: Integer, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
writeInt16LE
向快取物件寫入一個16 位元整數數值,以低位元組序的儲存方式
1
2Integer Buffer.writeInt16LE(Integer value,
Integer offset = 0);
呼叫參數:
- value: Integer, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
writeInt16BE
向快取物件寫入一個16 位元整數數值,以高位元組序的儲存方式
1
2Integer Buffer.writeInt16BE(Integer value,
Integer offset = 0);
呼叫參數:
- value: Integer, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
writeInt32LE
向快取物件寫入一個32 位元整數數值,以低位元組序的儲存方式
1
2Integer Buffer.writeInt32LE(Integer value,
Integer offset = 0);
呼叫參數:
- value: Integer, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
writeInt32BE
向快取物件寫入一個32 位元整數數值,以高位元組序的儲存方式
1
2Integer Buffer.writeInt32BE(Integer value,
Integer offset = 0);
呼叫參數:
- value: Integer, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
writeInt64LE
向快取物件寫入一個64 位元整數數值,以低位元組序的儲存方式
1
2Integer Buffer.writeInt64LE(Long value,
Integer offset = 0);
呼叫參數:
- value: Long, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
writeInt64BE
向快取物件寫入一個64 位元整數數值,以高位元組序的儲存方式
1
2Integer Buffer.writeInt64BE(Long value,
Integer offset = 0);
呼叫參數:
- value: Long, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
writeIntLE
向快取物件寫入一個整數數值,最大支援48 位,以低字節序的儲存方式
1
2
3Integer Buffer.writeIntLE(Long value,
Integer offset = 0,
Integer byteLength = 6);
呼叫參數:
- value: Long, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
- byteLength: Integer, 指定寫入的位元組數,預設6 個位元組
回傳結果:
- Integer, offset 加上寫入的位元組數
writeIntBE
向快取物件寫入一個整數數值,最大支援48 位,以高字節序的儲存方式
1
2
3Integer Buffer.writeIntBE(Long value,
Integer offset = 0,
Integer byteLength = 6);
呼叫參數:
- value: Long, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
- byteLength: Integer, 指定寫入的位元組數,預設6 個位元組
回傳結果:
- Integer, offset 加上寫入的位元組數
writeFloatLE
向快取物件寫入一個浮點數,以低位元組序的儲存方式
1
2Integer Buffer.writeFloatLE(Number value,
Integer offset);
呼叫參數:
- value: Number, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
writeFloatBE
寫入一個浮點數,以高位元組序的儲存方式
1
2Integer Buffer.writeFloatBE(Number value,
Integer offset);
呼叫參數:
- value: Number, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
writeDoubleLE
向快取物件寫入一個雙精度浮點數,以低位元組序的儲存方式
1
2Integer Buffer.writeDoubleLE(Number value,
Integer offset);
呼叫參數:
- value: Number, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
writeDoubleBE
向快取物件寫入一個雙精度浮點數,以高位元組序的儲存方式
1
2Integer Buffer.writeDoubleBE(Number value,
Integer offset);
呼叫參數:
- value: Number, 指定寫入的數值
- offset: Integer, 指定寫入的起始位置
回傳結果:
- Integer, offset 加上寫入的位元組數
indexOf
傳回某個指定資料在Buffer 中首次出現的位置
1
2Integer Buffer.indexOf(Integer v,
Integer offset = 0);
呼叫參數:
- v: Integer, 待找數據,如果未指定offset,預設從起始位元開始
- offset: Integer, 起始查找位置
回傳結果:
- Integer, 返回查找到的位置,未找到返回-1
傳回某個指定資料在Buffer 中首次出現的位置
1
2Integer Buffer.indexOf(Buffer v,
Integer offset = 0);
呼叫參數:
- v: Buffer, 待查找數據,如果未指定offset,預設從起始位元開始
- offset: Integer, 起始查找位置
回傳結果:
- Integer, 返回查找到的位置,未找到返回-1
傳回某個指定資料在Buffer 中首次出現的位置
1
2Integer Buffer.indexOf(String v,
Integer offset = 0);
呼叫參數:
- v: String, 待查找數據,如果未指定offset,預設從起始位元開始
- offset: Integer, 起始查找位置
回傳結果:
- Integer, 返回查找到的位置,未找到返回-1
slice
傳回一個新快取對象,包含指定起始到快取結尾的數據
1Buffer Buffer.slice(Integer start = 0);
呼叫參數:
- start: Integer, 指定範圍的起始,預設從頭開始
回傳結果:
- Buffer, 返回新的快取對象
返回一個新緩存對象,包含指定範圍的數據,若範圍超出緩存,則只返回有效部分數據
1
2Buffer Buffer.slice(Integer start,
Integer end);
呼叫參數:
- start: Integer, 指定範圍的起始
- end: Integer, 指定範圍的結束
回傳結果:
- Buffer, 返回新的快取對象
equals
比較目前物件與給定的物件是否相等
1Boolean Buffer.equals(object expected);
呼叫參數:
- expected:object, 制定比較的目標對象
回傳結果:
- Boolean, 傳回物件比較的結果
compare
比較快取區的內容
1Integer Buffer.compare(Buffer buf);
呼叫參數:
- buf: Buffer, 待比較緩存對象
回傳結果:
- Integer, 內容比較結果
toString
傳回二進位資料的編碼字串
1
2
3String Buffer.toString(String codec,
Integer offset = 0,
Integer end);
呼叫參數:
- codec: String, 指定編碼格式,允許值為:"hex", "base32", "base58", "base64", "utf8", 或者iconv模組支援的字元集
- offset: Integer, 讀取起始位置
- end: Integer, 讀取終止位置
回傳結果:
- String, 傳回物件的字串表示
傳回二進位資料的編碼字串
1
2String Buffer.toString(String codec,
Integer offset = 0);
呼叫參數:
- codec: String, 指定編碼格式,允許值為:"hex", "base32", "base58", "base64", "utf8", 或者iconv模組支援的字元集
- offset: Integer, 讀取起始位置
回傳結果:
- String, 傳回物件的字串表示
傳回二進位資料的utf8 編碼字串
1String Buffer.toString();
回傳結果:
- String, 傳回物件的字串表示
toArray
傳回全部二進位資料的數組
1Array Buffer.toArray();
回傳結果:
- Array, 傳回包含物件資料的數組
hex
使用16 進位編碼快取物件內容
1String Buffer.hex();
回傳結果:
- String, 返回編碼字串
base32
使用base32編碼快取物件內容
1String Buffer.base32();
回傳結果:
- String, 返回編碼字串
base58
使用base58編碼快取物件內容
1String Buffer.base58();
回傳結果:
- String, 返回編碼字串
base64
使用base64編碼快取物件內容
1String Buffer.base64();
回傳結果:
- String, 返回編碼字串
toString
傳回物件的字串表示,一般回傳"[Native Object]",物件可以根據自己的特性重新實現
1String Buffer.toString();
回傳結果:
- String, 傳回物件的字串表示
toJSON
傳回物件的JSON 格式表示,一般傳回物件定義的可讀屬性集合
1Value Buffer.toJSON(String key = "");
呼叫參數:
- key: String, 未使用
回傳結果:
- Value, 傳回包含可JSON 序列化的值