diff --git a/zh-cn/application-dev/reference/apis/js-apis-buffer.md b/zh-cn/application-dev/reference/apis/js-apis-buffer.md index 8f9dc2da74965af2331a49fe01a98cb8332d1118..e96a0be8ea126341ca717dc3293c9919f4031415 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-buffer.md +++ b/zh-cn/application-dev/reference/apis/js-apis-buffer.md @@ -25,6 +25,40 @@ import buffer from '@ohos.buffer'; | buffer | ArrayBuffer | 是 | 否 | ArrayBuffer对象。 | | byteOffset | number | 是 | 否 | 当前buffer所在内存池的偏移量。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200013 | Cannot set property ${propertyName} of Buffer which has only a getter. | + +**示例:** + +```ts +import buffer from '@ohos.buffer'; + +let buf = buffer.from("1236"); +try { + buf.length = 10; +} catch (err) { + console.log("set length exception: " + JSON.stringify(err)); +} + +let buf1 = buffer.from("123"); +try { + buf.buffer = buf1; +} catch (err) { + console.log("set buffer exception: " + JSON.stringify(err)); +} + +try { + buf.byteOffset = 3; +} catch (err) { + console.log("set byteOffset exception: " + JSON.stringify(err)); +} +``` + ### alloc alloc(size: number, fill?: string | Buffer | number, encoding?: BufferEncoding): Buffer @@ -55,6 +89,12 @@ import buffer from '@ohos.buffer'; let buf1 = buffer.alloc(5); let buf2 = buffer.alloc(5, 'a'); let buf3 = buffer.alloc(11, 'aGVsbG8gd29ybGQ=', 'base64'); + +try { + let buf = buffer.alloc(-5); +} catch (err) { + console.log("alloc exception: " + JSON.stringify(err)); +} ``` ### allocUninitializedFromPool @@ -85,6 +125,12 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(10); buf.fill(0); + +try { + let buf = buffer.allocUninitializedFromPool(-5); +} catch (err) { + console.log("allocUninitializedFromPool exception: " + JSON.stringify(err)); +} ``` ### allocUninitialized @@ -114,6 +160,12 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitialized(10); buf.fill(0); + +try { + let buf = buffer.allocUninitialized(-5); +} catch (err) { + console.log("allocUninitialized exception: " + JSON.stringify(err)); +} ``` ### byteLength @@ -145,6 +197,12 @@ import buffer from '@ohos.buffer'; let str = '\u00bd + \u00bc = \u00be'; console.log(`${str}: ${str.length} characters, ${buffer.byteLength(str, 'utf-8')} bytes`); // 打印: ½ + ¼ = ¾: 9 characters, 12 bytes + +try { + let byteLen = buffer.byteLength(10); +} catch (err) { + console.log("byteLength exception: " + JSON.stringify(err)); +} ``` ### compare @@ -180,6 +238,12 @@ let res = buf1.compare(buf2); console.log(Number(res).toString()); // 打印 1 + +try { + let res = buffer.compare(10, buf2); +} catch (err) { + console.log("compare exception: " + JSON.stringify(err)); +} ``` ### concat @@ -203,6 +267,14 @@ concat(list: Buffer[] | Uint8Array[], totalLength?: number): Buffer | -------- | -------- | | Buffer | 返回新Buffer的实例。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "totalLength" is out of range. | + **示例:** ```ts @@ -212,6 +284,18 @@ let buf1 = buffer.from("1234"); let buf2 = buffer.from("abcd"); let buf = buffer.concat([buf1, buf2]); console.log(buf.toString('hex')); // 3132333461626364 + +try { + buf = buffer.concat("test string"); +} catch (err) { + console.log("concat exception: " + JSON.stringify(err)); +} + +try { + buf = buffer.concat([buf1, buf2], -1); +} catch (err) { + console.log("concat exception: " + JSON.stringify(err)); +} ``` ### from @@ -241,6 +325,12 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0x62, 0x75, 0x66, 0x66, 0x65, 0x72]); console.log(buf.toString('hex')); // 627566666572 + +try { + const buf = buffer.from(10); +} catch (err) { + console.log("from exception: " + JSON.stringify(err)); +} ``` ### from @@ -265,6 +355,14 @@ from(arrayBuffer: ArrayBuffer | SharedArrayBuffer, byteOffset?: number, length?: | -------- | -------- | | Buffer | 返回一个共享内存的Buffer实例。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[byteOffset/length]" is out of range. | + **示例:** ```ts @@ -272,6 +370,12 @@ import buffer from '@ohos.buffer'; let ab = new ArrayBuffer(10); let buf = buffer.from(ab, 0, 2); + +try { + const buf = buffer.from(arrayBuffer, 6, 1); +} catch (err) { + console.log("from exception: " + JSON.stringify(err)); +} ``` ### from @@ -301,6 +405,12 @@ import buffer from '@ohos.buffer'; let buf1 = buffer.from('buffer'); let buf2 = buffer.from(buf1); + +try { + const buf = buffer.from(10); +} catch (err) { + console.log("from exception: " + JSON.stringify(err)); +} ``` ### from @@ -331,6 +441,12 @@ from(object: Object, offsetOrEncoding: number | string, length: number): Buffer import buffer from '@ohos.buffer'; let buf = buffer.from(new String('this is a test')); + +try { + const buf = buffer.from(10, 0, 1); +} catch (err) { + console.log("from exception: " + JSON.stringify(err)); +} ``` ### from @@ -364,6 +480,12 @@ let buf2 = buffer.from('7468697320697320612074c3a97374', 'hex'); console.log(buf1.toString()); // 打印: this is a test console.log(buf2.toString()); + +try { + const buf = buffer.from("test string", "utf9"); +} catch (err) { + console.log("from exception: " + JSON.stringify(err)); +} ``` @@ -465,6 +587,13 @@ let buf2 = buffer.from([5, 6, 7, 8, 9, 1, 2, 3, 4]); console.log(buf1.compare(buf2, 5, 9, 0, 4).toString()); // 打印: 0 console.log(buf1.compare(buf2, 0, 6, 4).toString()); // 打印: -1 console.log(buf1.compare(buf2, 5, 6, 5).toString()); // 打印: 1 + +let buf = buffer.from("1236"); +try { + let res = buf.compare(10); +} catch (err) { + console.log("compare exception: " + JSON.stringify(err)); +} ``` ### copy @@ -490,6 +619,14 @@ copy(target: Buffer| Uint8Array, targetStart?: number, sourceStart?: number, sou | -------- | -------- | | number | 复制的字节总长度。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[targetStart/sourceStart/sourceEnd]" is out of range. | + **示例:** ```ts @@ -505,6 +642,21 @@ for (let i = 0; i < 26; i++) { buf1.copy(buf2, 8, 16, 20); console.log(buf2.toString('ascii', 0, 25)); // 打印: !!!!!!!!qrst!!!!!!!!!!!!! + +let buf3 = buffer.from("123656"); +try { + let num = buf3.copy(10); +} catch (err) { + console.log("copy exception: " + JSON.stringify(err)); +} + +let buf4 = buffer.from("123656"); +let buf5 = buffer.from("1235"); +try { + let num = buf4.copy(buf5, -1); +} catch (err) { + console.log("copy exception: " + JSON.stringify(err)); +} ``` ### entries @@ -558,6 +710,11 @@ let buf3 = buffer.from('ABCD'); console.log(buf1.equals(buf2).toString()); // 打印: true console.log(buf1.equals(buf3).toString()); // 打印: false +try { + let res = buf1.equals("1236"); +} catch (err) { + console.log("equals exception: " + JSON.stringify(err)); +} ``` ### fill @@ -583,6 +740,14 @@ fill(value: string | Buffer | Uint8Array | number, offset?: number, end?: number | -------- | -------- | | Buffer | 填充后的Buffer实例。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[offset/end]" is out of range. | + **示例:** ```ts @@ -590,6 +755,12 @@ import buffer from '@ohos.buffer'; let b = buffer.allocUninitializedFromPool(50).fill('h'); console.log(b.toString()); + +try { + let buf = buffer.alloc(3).fill("$*$", -1); +} catch (err) { + console.log("fill exception: " + JSON.stringify(err)); +} ``` @@ -623,6 +794,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.from('this is a buffer'); console.log(buf.includes('this').toString()); // 打印: true console.log(buf.includes('be').toString()); // 打印: false + +let buf1 = buffer.from("13236"); +try { + let flag = buf1.includes(true); +} catch (err) { + console.log("includes exception: " + JSON.stringify(err)); +} ``` ### indexOf @@ -655,6 +833,19 @@ import buffer from '@ohos.buffer'; let buf = buffer.from('this is a buffer'); console.log(buf.indexOf('this').toString()); // 打印: 0 console.log(buf.indexOf('is').toString()); // 打印: 2 + +let buf1 = buffer.from("13236"); +try { + let index = buf1.indexOf(true); +} catch (err) { + console.log("indexOf exception: " + JSON.stringify(err)); +} + +try { + let index1 = buf1.indexOf("a", "utf9"); +} catch (err) { + console.log("indexOf exception: " + JSON.stringify(err)); +} ``` ### keys @@ -712,6 +903,20 @@ import buffer from '@ohos.buffer'; let buf = buffer.from('this buffer is a buffer'); console.log(buf.lastIndexOf('this').toString()); // 打印: 0 console.log(buf.lastIndexOf('buffer').toString()); // 打印: 17 + +let buf1 = buffer.from("13236"); +try { + let index = buf1.lastIndexOf(true); +} catch (err) { + console.log("lastIndexOf exception: " + JSON.stringify(err)); +} + +try { + let index1 = buf1.lastIndexOf("a", "utf9"); +} catch (err) { + console.log("lastIndexOf exception: " + JSON.stringify(err)); +} + ``` @@ -735,6 +940,14 @@ readBigInt64BE(offset?: number): bigint | -------- | -------- | | bigint | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -743,6 +956,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78]); console.log(buf.readBigInt64BE(0).toString()); + +let buf1 = buffer.allocUninitializedFromPool(8); +buf1.writeBigInt64BE(0x0102030405060708n, 0); +try { + let ref = buf1.readBigInt64BE(1).toString(16); +} catch (err) { + console.log("readBigInt64BE exception: " + JSON.stringify(err)); +} ``` ### readBigInt64LE @@ -765,6 +986,14 @@ readBigInt64LE(offset?: number): bigint | -------- | -------- | | bigint | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -773,6 +1002,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78]); console.log(buf.readBigInt64LE(0).toString()); + +let buf1 = buffer.allocUninitializedFromPool(8); +buf1.writeBigInt64BE(0x0102030405060708n, 0); +try { + let ref = buf1.readBigInt64LE(1).toString(16); +} catch (err) { + console.log("readBigInt64LE exception: " + JSON.stringify(err)); +} ``` ### readBigUInt64BE @@ -795,6 +1032,14 @@ readBigUInt64BE(offset?: number): bigint | -------- | -------- | | bigint | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -803,6 +1048,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78]); console.log(buf.readBigUInt64BE(0).toString()); + +let buf1 = buffer.allocUninitializedFromPool(8); +buf1.writeBigUInt64BE(0xdecafafecacefaden, 0); +try { + let ref = buf1.readBigUInt64BE(1).toString(16); +} catch (err) { + console.log("readBigUInt64BE exception: " + JSON.stringify(err)); +} ``` ### readBigUInt64LE @@ -825,6 +1078,14 @@ readBigUInt64LE(offset?: number): bigint | -------- | -------- | | bigint | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -833,6 +1094,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78]); console.log(buf.readBigUInt64LE(0).toString()); + +let buf1 = buffer.allocUninitializedFromPool(8); +buf1.writeBigUInt64BE(0xdecafafecacefaden, 0); +try { + let ref = buf1.readBigUInt64LE(1).toString(16); +} catch (err) { + console.log("readBigUInt64LE exception: " + JSON.stringify(err)); +} ``` ### readDoubleBE @@ -855,6 +1124,14 @@ readDoubleBE(offset?: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -862,6 +1139,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([1, 2, 3, 4, 5, 6, 7, 8]); console.log(buf.readDoubleBE(0).toString()); + +let buf1 = buffer.allocUninitializedFromPool(8); +buf1.writeDoubleBE(123.456, 0); +try { + let ref = buf1.readDoubleBE(1); +} catch (err) { + console.log("readDoubleBE exception: " + JSON.stringify(err)); +} ``` ### readDoubleLE @@ -884,6 +1169,14 @@ readDoubleLE(offset?: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -891,6 +1184,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([1, 2, 3, 4, 5, 6, 7, 8]); console.log(buf.readDoubleLE(0).toString()); + +let buf1 = buffer.allocUninitializedFromPool(8); +buf1.writeDoubleLE(123.456, 0); +try { + let ref = buf1.readDoubleLE(1); +} catch (err) { + console.log("readDoubleLE exception: " + JSON.stringify(err)); +} ``` ### readFloatBE @@ -913,6 +1214,14 @@ readFloatBE(offset?: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -920,6 +1229,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([1, 2, 3, 4, 5, 6, 7, 8]); console.log(buf.readFloatBE(0).toString()); + +let buf1 = buffer.allocUninitializedFromPool(4); +buf1.writeFloatBE(0xcabcbcbc, 0); +try { + let ref = buf1.readFloatBE(1).toString(16); +} catch (err) { + console.log("readFloatBE exception: " + JSON.stringify(err)); +} ``` ### readFloatLE @@ -942,6 +1259,14 @@ readFloatLE(offset?: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -949,6 +1274,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([1, 2, 3, 4, 5, 6, 7, 8]); console.log(buf.readFloatLE(0).toString()); + +let buf1 = buffer.allocUninitializedFromPool(4); +buf1.writeFloatLE(0xcabcbcbc, 0); +try { + let ref = buf1.readFloatLE(1).toString(16); +} catch (err) { + console.log("readFloatLE exception: " + JSON.stringify(err)); +} ``` ### readInt8 @@ -971,6 +1304,14 @@ readInt8(offset?: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -979,6 +1320,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([-1, 5]); console.log(buf.readInt8(0).toString()); // 打印: -1 console.log(buf.readInt8(1).toString()); // 打印: 5 + +let buf1 = buffer.allocUninitializedFromPool(2); +buf1.writeInt8(0x12); +try { + let ref = buf1.readInt8(2).toString(16); +} catch (err) { + console.log("readInt8 exception: " + JSON.stringify(err)); +} ``` ### readInt16BE @@ -1001,6 +1350,14 @@ readInt16BE(offset?: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -1008,6 +1365,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0, 5]); console.log(buf.readInt16BE(0).toString()); // 打印: 5 + +let buf1 = buffer.alloc(2); +buf1.writeInt16BE(0x1234, 0); +try { + let ref = buf1.readInt16BE(1).toString(16); +} catch (err) { + console.log("readInt16BE exception: " + JSON.stringify(err)); +} ``` ### readInt16LE @@ -1030,6 +1395,14 @@ readInt16LE(offset?: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -1037,6 +1410,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0, 5]); console.log(buf.readInt16LE(0).toString()); // 打印: 1280 + +let buf1 = buffer.alloc(2); +buf1.writeInt16BE(0x1234, 0); +try { + let ref = buf1.readInt16LE(1); +} catch (err) { + console.log("readInt16LE exception: " + JSON.stringify(err)); +} ``` ### readInt32BE @@ -1059,6 +1440,14 @@ readInt32BE(offset?: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -1066,6 +1455,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0, 0, 0, 5]); console.log(buf.readInt32BE(0).toString()); // 打印: 5 + +let buf1 = buffer.alloc(4); +buf1.writeInt32BE(0x12345678, 0); +try { + let ref = buf1.readInt32BE(1); +} catch (err) { + console.log("readInt32BE exception: " + JSON.stringify(err)); +} ``` ### readInt32LE @@ -1088,6 +1485,14 @@ readInt32LE(offset?: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -1095,6 +1500,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0, 0, 0, 5]); console.log(buf.readInt32LE(0).toString()); // 打印: 83886080 + +let buf1 = buffer.alloc(4); +buf1.writeInt32BE(0x12345678, 0); +try { + let ref = buf1.readInt32LE(1); +} catch (err) { + console.log("readInt32LE exception: " + JSON.stringify(err)); +} ``` ### readIntBE @@ -1119,6 +1532,14 @@ readIntBE(offset: number, byteLength: number): number | -------- | -------- | | number | 读取的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[offset/byteLength]" is out of range. | + **示例:** ```ts @@ -1127,6 +1548,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from("ab"); let num = buf.readIntBE(0, 1); console.log(num.toString()); // 97 + +let buf1 = buffer.allocUninitializedFromPool(6); +buf1.writeIntBE(0x123456789011, 0, 6); +try { + let ref = buf1.readIntBE(2, 5).toString(16); +} catch (err) { + console.log("readIntBE exception: " + JSON.stringify(err)); +} ``` @@ -1152,6 +1581,14 @@ readIntLE(offset: number, byteLength: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[offset/byteLength]" is out of range. | + **示例:** ```ts @@ -1159,6 +1596,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0x12, 0x34, 0x56, 0x78, 0x90, 0xab]); console.log(buf.readIntLE(0, 6).toString(16)); + +let buf1 = buffer.allocUninitializedFromPool(6); +buf1.writeIntLE(0x123456789011, 0, 6); +try { + let ref = buf1.readIntLE(2, 5).toString(16); +} catch (err) { + console.log("readIntBE exception: " + JSON.stringify(err)); +} ``` ### readUInt8 @@ -1182,6 +1627,14 @@ readUInt8(offset?: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -1190,6 +1643,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([1, -2]); console.log(buf.readUInt8(0).toString()); console.log(buf.readUInt8(1).toString()); + +let buf = buffer.allocUninitializedFromPool(4); +buf.writeUInt8(0x42); +try { + let ref = buf.readUInt8(4).toString(16); +} catch (err) { + console.log("readUInt8 exception: " + JSON.stringify(err)); +} ``` ### readUInt16BE @@ -1213,6 +1674,14 @@ readUInt16BE(offset?: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -1221,6 +1690,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0x12, 0x34, 0x56]); console.log(buf.readUInt16BE(0).toString(16)); console.log(buf.readUInt16BE(1).toString(16)); + +let buf1 = buffer.allocUninitializedFromPool(4); +buf1.writeUInt16BE(0x1234, 0); +try { + let ref = buf1.readUInt16BE(3).toString(16); +} catch (err) { + console.log("readUInt16BE exception: " + JSON.stringify(err)); +} ``` ### readUInt16LE @@ -1244,6 +1721,14 @@ readUInt16LE(offset?: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -1252,6 +1737,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0x12, 0x34, 0x56]); console.log(buf.readUInt16LE(0).toString(16)); console.log(buf.readUInt16LE(1).toString(16)); + +let buf1 = buffer.allocUninitializedFromPool(4); +buf1.writeUInt16LE(0x1234, 0); +try { + let ref = buf1.readUInt16LE(3).toString(16); +} catch (err) { + console.log("readUInt16LE exception: " + JSON.stringify(err)); +} ``` ### readUInt32BE @@ -1275,6 +1768,14 @@ readUInt32BE(offset?: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -1282,6 +1783,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0x12, 0x34, 0x56, 0x78]); console.log(buf.readUInt32BE(0).toString(16)); + +let buf1 = buffer.allocUninitializedFromPool(4); +buf1.writeUInt32BE(0x12345678, 0); +try { + let ref = buf1.readUInt32BE(1).toString(16); +} catch (err) { + console.log("readUInt32BE exception: " + JSON.stringify(err)); +} ``` ### readUInt32LE @@ -1305,6 +1814,14 @@ readUInt32LE(offset?: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "offset" is out of range. | + **示例:** ```ts @@ -1312,6 +1829,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0x12, 0x34, 0x56, 0x78]); console.log(buf.readUInt32LE(0).toString(16)); + +let buf1 = buffer.allocUninitializedFromPool(4); +buf1.writeUInt32LE(0x12345678, 0); +try { + let ref = buf1.readUInt32LE(1).toString(16); +} catch (err) { + console.log("readUInt32LE exception: " + JSON.stringify(err)); +} ``` ### readUIntBE @@ -1336,6 +1861,14 @@ readUIntBE(offset: number, byteLength: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[offset/byteLength]" is out of range. | + **示例:** ```ts @@ -1343,6 +1876,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0x12, 0x34, 0x56, 0x78, 0x90, 0xab]); console.log(buf.readUIntBE(0, 6).toString(16)); + +let buf1 = buffer.allocUninitializedFromPool(4); +buf1.writeUIntBE(0x13141516, 0, 4); +try { + let ref = buf1.readUIntBE(2, 3).toString(16); +} catch (err) { + console.log("readUIntBE exception: " + JSON.stringify(err)); +} ``` ### readUIntLE @@ -1367,6 +1908,14 @@ readUIntLE(offset: number, byteLength: number): number | -------- | -------- | | number | 读取出的内容。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[offset/byteLength]" is out of range. | + **示例:** ```ts @@ -1374,6 +1923,14 @@ import buffer from '@ohos.buffer'; let buf = buffer.from([0x12, 0x34, 0x56, 0x78, 0x90, 0xab]); console.log(buf.readUIntLE(0, 6).toString(16)); + +let buf1 = buffer.allocUninitializedFromPool(4); +buf1.writeUIntLE(0x13141516, 0, 4); +try { + let ref = buf1.readUIntLE(2, 3).toString(16); +} catch (err) { + console.log("readUIntLE exception: " + JSON.stringify(err)); +} ``` ### subarray @@ -1427,6 +1984,14 @@ swap16(): Buffer | -------- | -------- | | Buffer | 交换之后的Buffer实例。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200009 | Buffer size must be a multiple of 16-bits | + **示例:** ```ts @@ -1437,6 +2002,13 @@ console.log(buf1.toString('hex')); // 打印: 0102030405060708 buf1.swap16(); console.log(buf1.toString('hex')); // 打印: 0201040306050807 + +let buf2 = buffer.from("132"); +try { + buf2.swap16(); +} catch (err) { + console.log("swap16 exception: " + JSON.stringify(err)); +} ``` ### swap32 @@ -1454,6 +2026,14 @@ swap32(): Buffer | -------- | -------- | | Buffer | 交换之后的Buffer实例。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200009 | Buffer size must be a multiple of 32-bits | + **示例:** ```ts @@ -1464,6 +2044,13 @@ console.log(buf1.toString('hex')); // 打印: 0102030405060708 buf1.swap32(); console.log(buf1.toString('hex')); // 打印: 0403020108070605 + +let buf2 = buffer.from("132"); +try { + buf2.swap32(); +} catch (err) { + console.log("swap32 exception: " + JSON.stringify(err)); +} ``` ### swap64 @@ -1481,6 +2068,14 @@ swap64(): Buffer | -------- | -------- | | Buffer | 交换之后的Buffer实例。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200009 | Buffer size must be a multiple of 64-bits | + **示例:** ```ts @@ -1490,6 +2085,13 @@ let buf1 = buffer.from([0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8]); console.log(buf1.toString('hex')); // 打印: 0102030405060708 buf1.swap64(); console.log(buf1.toString('hex')); // 打印: 0807060504030201 + +let buf2 = buffer.from("1234567"); +try { + buf2.swap64(); +} catch (err) { + console.log("swap64 exception: " + JSON.stringify(err)); +} ``` ### toJSON @@ -1551,6 +2153,13 @@ for (let i = 0; i < 26; i++) { } console.log(buf1.toString('utf-8')); // 打印: abcdefghijklmnopqrstuvwxyz + +let buf2 = buffer.from("abc"); +try { + let str = buf2.toString("utf9"); +} catch (err) { + console.log("toString exception: " + JSON.stringify(err)); +} ``` ### values @@ -1602,6 +2211,14 @@ write(str: string, offset?: number, length?: number, encoding?: string): number | -------- | -------- | | number | 返回写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[offset/length]" is out of range. | + **示例:** ```ts @@ -1614,6 +2231,27 @@ console.log(`${len} bytes: ${buf.toString('utf-8', 0, len)}`); let buffer1 = buffer.alloc(10); let length = buffer1.write('abcd', 8); + +let buf1 = buffer.alloc(8); +try { + let offset1 = buf1.write("abcde", "utf9"); +} catch (err) { + console.log("write exception: " + JSON.stringify(err)); +} + +let buf2 = buffer.alloc(8); +try { + let offset2 = buf2.write(10); +} catch (err) { + console.log("write exception: " + JSON.stringify(err)); +} + +let buf3 = buffer.alloc(8); +try { + let offset3 = buf3.write("abcde", -1); +} catch (err) { + console.log("write exception: " + JSON.stringify(err)); +} ``` ### writeBigInt64BE @@ -1638,6 +2276,14 @@ writeBigInt64BE(value: bigint, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -1645,6 +2291,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(8); buf.writeBigInt64BE(0x0102030405060708n, 0); + +let buf1 = buffer.allocUninitializedFromPool(8); +try { + let ref = buf1.writeBigInt64BE(0x0102030405060708n, 1); +} catch (err) { + console.log("writeBigInt64BE exception: " + JSON.stringify(err)); +} ``` ### writeBigInt64LE @@ -1669,6 +2322,14 @@ writeBigInt64LE(value: bigint, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -1676,6 +2337,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(8); buf.writeBigInt64LE(0x0102030405060708n, 0); + +let buf1 = buffer.allocUninitializedFromPool(8); +try { + let ref = buf1.writeBigInt64LE(0x0102030405060708n, 1); +} catch (err) { + console.log("writeBigInt64LE exception: " + JSON.stringify(err)); +} ``` ### writeBigUInt64BE @@ -1700,6 +2368,14 @@ writeBigUInt64BE(value: bigint, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -1707,6 +2383,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(8); buf.writeBigUInt64BE(0xdecafafecacefaden, 0); + +let buf1 = buffer.allocUninitializedFromPool(8); +try { + let ref = buf1.writeBigUInt64BE(0xdecafafecacefaden, 1); +} catch (err) { + console.log("writeBigUInt64BE exception: " + JSON.stringify(err)); +} ``` ### writeBigUInt64LE @@ -1731,6 +2414,14 @@ writeBigUInt64LE(value: bigint, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -1738,6 +2429,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(8); buf.writeBigUInt64LE(0xdecafafecacefaden, 0); + +let buf = buffer.allocUninitializedFromPool(8); +try { + let ref = buf.writeBigUInt64LE(0xdecafafecacefaden, 1); +} catch (err) { + console.log("writeBigUInt64LE exception: " + JSON.stringify(err)); +} ``` ### writeDoubleBE @@ -1762,6 +2460,14 @@ writeDoubleBE(value: number, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -1769,6 +2475,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(8); buf.writeDoubleBE(123.456, 0); + +let buf1 = buffer.allocUninitializedFromPool(8); +try { + let ref = buf1.writeDoubleBE(123.456, 1); +} catch (err) { + console.log("writeDoubleBE exception: " + JSON.stringify(err)); +} ``` ### writeDoubleLE @@ -1793,6 +2506,14 @@ writeDoubleLE(value: number, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -1800,6 +2521,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(8); buf.writeDoubleLE(123.456, 0); + +let buf = buffer.allocUninitializedFromPool(8); +try { + let ref = buf.writeDoubleLE(123.456, 1); +} catch (err) { + console.log("writeDoubleLE exception: " + JSON.stringify(err)); +} ``` ### writeFloatBE @@ -1824,6 +2552,14 @@ writeFloatBE(value: number, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -1831,6 +2567,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(8); buf.writeFloatBE(0xcafebabe, 0); + +let buf1 = buffer.allocUninitializedFromPool(4); +try { + let ref = buf1.writeFloatBE(0xcabcbcbc, 5); +} catch (err) { + console.log("writeFloatBE exception: " + JSON.stringify(err)); +} ``` @@ -1856,6 +2599,14 @@ writeFloatLE(value: number, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -1863,6 +2614,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(8); buf.writeFloatLE(0xcafebabe, 0); + +let buf1 = buffer.allocUninitializedFromPool(4); +try { + let ref = buf1.writeFloatLE(0xcabcbcbc, 5); +} catch (err) { + console.log("writeFloatLE exception: " + JSON.stringify(err)); +} ``` ### writeInt8 @@ -1887,6 +2645,14 @@ writeInt8(value: number, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -1895,6 +2661,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(2); buf.writeInt8(2, 0); buf.writeInt8(-2, 1); + +let buf1 = buffer.allocUninitializedFromPool(2); +try { + let ref = buf1.writeInt8(2, -1); +} catch (err) { + console.log("writeInt8 exception: " + JSON.stringify(err)); +} ``` @@ -1920,6 +2693,14 @@ writeInt16BE(value: number, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -1927,6 +2708,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(2); buf.writeInt16BE(0x0102, 0); + +let buf1 = buffer.alloc(2); +try { + let ref = buf1.writeInt16BE(0x7bca, -1); +} catch (err) { + console.log("writeInt16BE exception: " + JSON.stringify(err)); +} ``` @@ -1952,6 +2740,14 @@ writeInt16LE(value: number, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -1959,6 +2755,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(2); buf.writeInt16LE(0x0304, 0); + +let buf1 = buffer.alloc(2); +try { + let ref = buf1.writeInt16LE(0x7bca, -1); +} catch (err) { + console.log("writeInt16LE exception: " + JSON.stringify(err)); +} ``` ### writeInt32BE @@ -1983,6 +2786,14 @@ writeInt32BE(value: number, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -1990,6 +2801,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(4); buf.writeInt32BE(0x01020304, 0); + +let buf1 = buffer.alloc(4); +try { + let ref = buf1.writeInt32BE(0x12345678, -1); +} catch (err) { + console.log("writeInt32BE exception: " + JSON.stringify(err)); +} ``` @@ -2015,6 +2833,14 @@ writeInt32LE(value: number, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -2022,6 +2848,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(4); buf.writeInt32LE(0x05060708, 0); + +let buf1 = buffer.alloc(4); +try { + let ref = buf1.writeInt32LE(0x12345678, -1); +} catch (err) { + console.log("writeInt32LE exception: " + JSON.stringify(err)); +} ``` ### writeIntBE @@ -2047,6 +2880,14 @@ writeIntBE(value: number, offset: number, byteLength: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset/byteLength]" is out of range. | + **示例:** ```ts @@ -2054,6 +2895,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(6); buf.writeIntBE(0x1234567890ab, 0, 6); + +let buf1 = buffer.allocUninitializedFromPool(6); +try { + let ref = buf1.writeIntBE(0x1234567890ab, 1, 6); +} catch (err) { + console.log("writeIntBE exception: " + JSON.stringify(err)); +} ``` @@ -2080,6 +2928,14 @@ writeIntLE(value: number, offset: number, byteLength: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset/byteLength]" is out of range. | + **示例:** ```ts @@ -2087,6 +2943,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(6); buf.writeIntLE(0x1234567890ab, 0, 6); + +let buf1 = buffer.allocUninitializedFromPool(6); +try { + let ref = buf1.writeIntLE(0x1234567890ab, 1, 6); +} catch (err) { + console.log("writeIntLE exception: " + JSON.stringify(err)); +} ``` ### writeUInt8 @@ -2111,6 +2974,14 @@ writeUInt8(value: number, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -2121,6 +2992,13 @@ buf.writeUInt8(0x3, 0); buf.writeUInt8(0x4, 1); buf.writeUInt8(0x23, 2); buf.writeUInt8(0x42, 3); + +let buf1 = buffer.allocUninitializedFromPool(4); +try { + let ref = buf1.writeUInt8(0x42, -1); +} catch (err) { + console.log("writeUInt8 exception: " + JSON.stringify(err)); +} ``` ### writeUInt16BE @@ -2145,6 +3023,14 @@ writeUInt16BE(value: number, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -2153,6 +3039,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(4); buf.writeUInt16BE(0xdead, 0); buf.writeUInt16BE(0xbeef, 2); + +let buf1 = buffer.allocUninitializedFromPool(4); +try { + let ref = buf1.writeUInt16BE(0xdeadfc, 0); +} catch (err) { + console.log("writeUInt16BE exception: " + JSON.stringify(err)); +} ``` ### writeUInt16LE @@ -2177,6 +3070,14 @@ writeUInt16LE(value: number, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -2185,6 +3086,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(4); buf.writeUInt16LE(0xdead, 0); buf.writeUInt16LE(0xbeef, 2); + +let buf1 = buffer.allocUninitializedFromPool(4); +try { + let ref = buf1.writeUInt16LE(0xdeadfc, 0); +} catch (err) { + console.log("writeUInt16LE exception: " + JSON.stringify(err)); +} ``` ### writeUInt32BE @@ -2209,6 +3117,14 @@ writeUInt32BE(value: number, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -2216,6 +3132,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(4); buf.writeUInt32BE(0xfeedface, 0); + +let buf1 = buffer.allocUninitializedFromPool(4); +try { + let ref = buf1.writeUInt32BE(0xfeedface, -1); +} catch (err) { + console.log("writeUInt32BE exception: " + JSON.stringify(err)); +} ``` ### writeUInt32LE @@ -2240,6 +3163,14 @@ writeUInt32LE(value: number, offset?: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset]" is out of range. | + **示例:** ```ts @@ -2247,6 +3178,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(4); buf.writeUInt32LE(0xfeedface, 0); + +let buf1 = buffer.allocUninitializedFromPool(4); +try { + let ref = buf1.writeUInt32LE(0xfeedface, -1); +} catch (err) { + console.log("writeUInt32LE exception: " + JSON.stringify(err)); +} ``` ### writeUIntBE @@ -2272,6 +3210,14 @@ writeUIntBE(value: number, offset: number, byteLength: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset/byteLength]" is out of range. | + **示例:** ```ts @@ -2279,6 +3225,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(6); buf.writeUIntBE(0x1234567890ab, 0, 6); + +let buf1 = buffer.allocUninitializedFromPool(4); +try { + let ref = buf1.writeUIntBE(0x13141516, 0, 1); +} catch (err) { + console.log("writeUIntBE exception: " + JSON.stringify(err)); +} ``` ### writeUIntLE @@ -2304,6 +3257,14 @@ writeUIntLE(value: number, offset: number, byteLength: number): number | -------- | -------- | | number | 写入的字节数。 | +**错误码:** + +以下错误码的详细介绍请参见[buffer错误码](../errorcodes/errorcode-buffer.md)。 + +| 错误码ID | 错误码信息 | +| -------- | -------- | +| 10200001 | The value of "[value/offset/byteLength]" is out of range. | + **示例:** ```ts @@ -2311,6 +3272,13 @@ import buffer from '@ohos.buffer'; let buf = buffer.allocUninitializedFromPool(6); buf.writeUIntLE(0x1234567890ab, 0, 6); + +let buf1 = buffer.allocUninitializedFromPool(4); +try { + let ref = buf1.writeUIntLE(0x13141516, 0, 1); +} catch (err) { + console.log("writeUIntLE exception: " + JSON.stringify(err)); +} ``` ### transcode @@ -2343,6 +3311,25 @@ import buffer from '@ohos.buffer'; let buf = buffer.alloc(50); let newBuf = buffer.transcode(buffer.from('€'), 'utf-8', 'ascii'); console.log(newBuf.toString('ascii')); + +try { + let buf1 = buffer.transcode(10, "utf8", "ucs2"); +} catch (err) { + console.log("transcode exception: " + JSON.stringify(err)); +} + +let buf2 = buffer.from("测试"); +try { + let buf3 = buffer.transcode(buf2, 0, "ucs2"); +} catch (err) { + console.log("transcode exception: " + JSON.stringify(err)); +} + +try { + let buf3 = buffer.transcode(buf2, "utf8", 0); +} catch (err) { + console.log("transcode exception: " + JSON.stringify(err)); +} ``` ## Blob @@ -2373,13 +3360,24 @@ Blob的构造函数。 **示例:** + ```ts + import buffer from '@ohos.buffer'; -```ts -import buffer from '@ohos.buffer'; - -let blob = new buffer.Blob(['a', 'b', 'c']); -let blob1 = new buffer.Blob(['a', 'b', 'c'], {endings:'native', type: 'MIME'}); -``` + let blob = new buffer.Blob(['a', 'b', 'c']); + let blob1 = new buffer.Blob(['a', 'b', 'c'], {endings:'native', type: 'MIME'}); + + try { + let blob1 = new buffer.Blob(["a", "b", "c"], 10); + } catch (err) { + console.log("Blob constructor exception: " + JSON.stringify(err)); + } + + try { + let blob2 = new buffer.Blob("abc", { type: "new type", endings: "transparent" }); + } catch (err) { + console.log("Blob constructor exception: " + JSON.stringify(err)); + } + ``` ### encode diff --git a/zh-cn/application-dev/reference/errorcodes/errorcode-buffer.md b/zh-cn/application-dev/reference/errorcodes/errorcode-buffer.md new file mode 100644 index 0000000000000000000000000000000000000000..6f31b7246041e653701be54dc82c13dbe00a6250 --- /dev/null +++ b/zh-cn/application-dev/reference/errorcodes/errorcode-buffer.md @@ -0,0 +1,55 @@ +# buffer错误码 + +## 10200001 参数范围越界错误 + +**错误信息** + +The value of ${param} is out of range. + +**错误描述** + +调用接口时某个参数超出了其正常范围的取值。 + +**可能原因** + +某个参数取值超出可用范围。 + +**处理步骤** + +检查所传参数是否在可用取值范围内。 + +## 10200009 Buffer size 错误 + +**错误信息** + +Buffer size must be a multiple of ${size} + +**错误描述** + +Buffer的长度必须是${size}的整数倍,${size}为16-bits,32-bits或者64-bits。 + +**可能原因** + +Buffer的长度不是${size}的整数倍,${size}为16-bits,32-bits或者64-bits。 + +**处理步骤** + +请检查Buffer的长度值。 + +## 10200013 只读属性设置错误 + +**错误信息** + +Cannot set property ${propertyName} of Buffer which has only a getter. + +**错误描述** + +Buffer的属性${propertyName}只读,不能进行设置。 + +**可能原因** + +将${propertyName}放在了等号左边(即对属性值进行设置)。 + +**处理步骤** + +请检查属性${propertyName}是否在等号左边。 \ No newline at end of file