我需要分配一个固定长度的ASCII字符缓冲区,因为我从远处的设备接收到一个随机顺序的(index,7-char chunk(元组。
在C/C++中,我会做:
char buffer[3*7+1];
memcpy(&buffer[indexOfTheChunk*7],incomingChunk,7);
我该如何进行飞镖?
您可以通过生成不可增长的List
:来创建固定大小的缓冲区
var buffer = List<int>.filled(elementCount);
Dart还提供了一个Uint8List
类,专门用于创建8位字节的固定大小缓冲区。
如果以后需要从ASCII字节中提取DartString
,可以在List<int>
/Uint8List
上调用ascii.decode
。