示例参考如下:@Entry @Component struct Index { @State message: string = 'Hello World'; test_str: string = 'Hello World'; private data :ArrayBuffer = new Uint8Array([17,255,84,145,175,64,66,2,1,1,1,1,0,0,0,0,0,0,0,10,9,68,68,80,48,53,52,50,48,50]); private data2 :ArrayBuffer = new Uint8Array([30,252,6,0,1,15,32,2,65,16,127,93,105,253,204,139,171,16,211,202,235,173,94,110,247,204,107,204,227,36,189]); test1(){ let manctureData = this.getManctureData(this.data) if (manctureData.byteLength ==0){ console.log("get failed"); }else{ console.log(get Mac ${manctureData[0].toString(16)}:${manctureData[1].toString(16)}:${manctureData[2].toString(16)}:${manctureData[3].toString(16)}:${manctureData[4].toString(16)}:${manctureData[5].toString(16)}) } } getManctureData(data:ArrayBuffer):Uint8Array{ let dataBuf = new Uint8Array(data); for(let i = 0; i < dataBuf.length; i++){ if (dataBuf[i+1]!= 0xff){ i+= dataBuf[i]; }else{ return new Uint8Array(data.slice(i+2, i+dataBuf[i]+1)) } } return new Uint8Array(0) } build() { Row() { Column() { Text(this.message) .fontSize(50) .fontWeight(FontWeight.Bold) .onClick(() => { this.test1() }) } .width('100%') } .height('100%') } }
示例参考如下: