当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Dart Uint8List.view用法及代码示例


dart:typed_data 库中Uint8List.view 的用法介绍如下。

用法:

Uint8List.view(
   ByteBuffer buffer,    
   [int offsetInBytes = 0,    
   int? length]   
)

buffer 中创建指定区域的 Uint8List view

Uint8List 中的更改将在字节缓冲区中可见,反之亦然。如果未指定区域的offsetInBytes 索引,则默认为零(字节缓冲区中的第一个字节)。如果未提供长度,则视图将扩展到字节缓冲区的末尾。

offsetInByteslength 必须为非负数,并且 offsetInBytes + ( length * bytesPerElement ) 必须小于或等于 buffer 的长度。

请注意,当从 TypedData 列表或字节数据创建视图时,该列表或字节数据本身可能是较大缓冲区上的视图,其中 TypedData.offsetInBytes 大于零。仅执行 Uint8List.view(other.buffer, 0, count) 可能不会指向您想要的字节。相反,您可能需要这样做:

Uint8List.view(other.buffer, other.offsetInBytes, count)

或者,使用包含此计算的Uint8List.sublistView

Uint8List.sublistView(other, 0, count);

(第三个参数是结束索引而不是长度,所以如果从大于零的位置开始,则不需要相应减少计数)。

相关用法


注:本文由纯净天空筛选整理自dart.dev大神的英文原创作品 Uint8List.view constructor。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。