首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >读取Dart上24位的有符号整数

读取Dart上24位的有符号整数
EN

Stack Overflow用户
提问于 2022-11-09 08:52:45
回答 1查看 26关注 0票数 0

我需要帮助从外部设备读取数据。在规范中,每个获取的值都是一个24位有符号整数,但我不能正确地从Dart读取数据(尽管我可以在Java上读取数据)。

从Java开始(因为它工作正常),我以字节数组的形式获取数据,然后读取一个字节,给出正确的值:

代码语言:javascript
运行
复制
 byte[] data  = call.argument("mydata");
 Log.d("CONVERT_DATA_datai", String.valueOf(data[4]));

在这种情况下,输出是-1,并且它是正确的。

在Dart中,我看到没有字节数组类型,但是我应该使用List<int>,所以我的代码是:

代码语言:javascript
运行
复制
 List<int> data = value as List<int>;
 print(data[4].toString());

在这种情况下,我得到的值255是不正确的,我认为,因为我必须把它转换成有符号的24位整数。

其他样本如下:

-6在java中,250在dart中(不正确)

3在java中,3在dart中(正确)

我该如何解决这个问题?

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2022-11-09 08:59:56

Int8List中有dart:typed_data类型。

通过访问Int8List::buffer,您可以读取任意数字。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74372147

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档