Java中RandomAccessFile readLong、readInt的dart等价物是什么



什么等效于Java RandomAccessFilereadLong

在Dart RandomAccess文件中?

更新答案:

var b = await  file.read(8); 
var longVal = b.buffer.asByteData().getUint64(0);

var b = await  file.read(4); 
var longVal = b.buffer.asByteData().getUint32(0);

readLong从该文件中读取一个带符号的64位整数。此方法从文件中读取八个字节,从当前文件指针开始。如果读取的字节按顺序为:

b1、b2、b3、b4、b5、b6、b7和b8,其中:

0<=b1、b2、b3、b4、b5、b6、b7、b8<255,

则结果等于:

var b = await  file.read(8); //Uint8List
var longVal =   (b[0] << 56) + (b[1] << 48)  + (b[2] << 40) + (b[3] << 32) + (b[4] << 24) + (b[5] << 16) + (b[6] << 8) + b[7];

最新更新