2015-07-28 12 views

Odpowiedz

6

Można użyć klasy ByteData:

var buffer = new Uint8List(8).buffer; 
var bytes = new ByteData.view(buffer); 
bytes.getUint16(offset); 

(parafrazą z odpowiedzi udzielonej przez kolegę)

1

Jak powiedział Seth , potrzebujesz widoku ByteData danych binarnych Uint8List.

Jest nieco lepiej używać ByteBuffer.asByteData(). Jest to trochę bardziej zwięzłe i działa lepiej podczas testowania. Jeśli masz fałszywe Uint8List i fałszywe ByteBuffer, new ByteData.view(buffer) zakończy się niepowodzeniem, ale można wprowadzić fałszywą metodę ByteData dla ByteBuffer's asByteData().

var bytes = myUint8List.buffer.asByteData(); 
bytes.getUint16(offset); 

Dzięki doskonałej dalekowzroczności mielibyśmy tylko asByteData() i również nie nadmiarowej konstruktora ByteData.view publicznego.

Powiązane problemy