如何从文件中获取ByteData

2024-04-18

我想转换一个File to a ByteData颤动中的物体。 像这样的东西:

import 'dart:io';
File file = getSomeCorrectFile(); //This file is correct
ByteData bytes = ByteData(file.readAsBytesSync()); //Doesnt compile
return bytes; 

我明白ByteData构造函数接收字节数的长度并用 0 初始化它们,所以我可以做类似的事情ByteData(file.readAsBytesStync().length);但那我该如何填充它们呢? 我缺少什么?


在 Dart 2.5.0 或更高版本中,我相信以下内容应该有效:

import 'dart:io';
import 'dart:typed_data';

...
File file = getSomeCorrectFile();
Uint8List bytes = file.readAsBytesSync();
return ByteData.view(bytes.buffer);

(在 Dart 2.5.0 之前,file.readAsBytesSync()行应该是:

Uint8List bytes = file.readAsBytesSync() as Uint8List;

File.readAsBytes https://api.dartlang.org/stable/2.3.0/dart-io/File/readAsBytes.html/File.readAsBytesSync https://api.dartlang.org/stable/2.3.0/dart-io/File/readAsBytesSync.html用于声明返回一个List<int>, but 返回的对象实际上是一个Uint8List subtype https://github.com/dart-lang/sdk/issues/31547.)

一旦你有了字节作为Uint8List, 你可以提取其ByteBuffer https://api.dartlang.org/stable/2.7.1/dart-typed_data/TypedData/buffer.html并构建一个ByteData从那。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从文件中获取ByteData 的相关文章

随机推荐

  • 最高序数枚举值

    我正在寻找从 bean 列表中的枚举属性列表计算最高序数枚举值 例如 我有 Data public class MyBean private Priority priority and public enum Priority URGENT
  • python字典日期时间作为键,keyError

    我正在尝试在 Linux 中使用 cron 运行 Python 脚本 它应该构建一个数据字典 我正在尝试使用datetime now time 作为字典中的键 但它似乎会引发错误 不可以datetimetype 可以用作Python 中的字
  • 在 ASP.NET MVC ViewModel 中存储模型 ID,安全问题

    在我的 MVC 应用程序中 我有一个页面供用户编辑其帐户详细信息 例如电子邮件地址 密码等 在我的数据库中 用户表保存此数据 主键是 UserId 在我创建的 ChangeAccountDetails 视图上 我传递了一个 ViewMode
  • delphi 文本矩形 自动换行

    我在 Delphi 7 中使用 Canvas TextRect 在屏幕上输出一些内容 我需要将文本包裹在矩形中 您需要使用带有 DT WORDBREAK 标志的 DrawText 或 DrawTextEx 请参阅中的示例
  • 为什么 Rails 将 TEXT 列截断为 65535 个字符?

    我正在使用 Ruby on Rails 将原始电子邮件保存在 MySQL 的 TEXT 列中 它不断被截断为 65535 个字符 有人知道是什么原因造成的吗 MySQL 正在运行max allowed packet 64M 使用InnoDB
  • Access 中的 Sqlite 链接表再次给出 #deleted 值

    情况 MS Access 恰好是 2010 年 使用 SQLite ODBC 驱动程序 0 997 链接到 SQLite 3 x 数据库中的表 问题 所有行中所有列中的数据值显示为 Deleted 解决方案 这是一个 回答我自己的问题 类型
  • VS Code SSH 远程连接问题

    过去一个月 我一直在使用 VS Code 并在 MacBookPro 上从家里远程连接来处理一个大学项目 但由于某种原因 它不再连接到计算机实验室服务器 不知道为什么会发生这种情况 但它今天停止工作了 我尝试重新安装 vs code 并将其
  • 是否可以在不打开 CSV 文件的情况下获取其行数?

    我有一个大小约为 1 GB 的 CSV 文件 由于我的笔记本电脑配置基本 我无法在 Excel 或 R 中打开该文件 但出于好奇 我想获取该文件中的行数文件 如果我能做到的话 我该怎么做呢 对于 Linux Unix wc l filena
  • 导致 SAXException2 的原因:“com.foo.Bar”的实例正在替换“java.lang.Object”,但“com.foo.Bar”绑定到匿名类型[重复]

    这个问题在这里已经有答案了 将现有 jaxb 同时使用 jaxb1 0 1 和 jaxb 2 0 5 应用程序 在带有 jdk5 的 JBoss 4 3 上 迁移到 jaxb 2 1 10 随 jdk6 提供 更新 jdk1 6 0 30
  • 对于单个开发人员来说,在云中存储 Mylyn 任务的最佳连接器是什么?

    我想使用 Mylyn 以任务为中心的用户界面 但我经常在两台电脑之间工作 并且不想购买任何错误跟踪软件 有人可以推荐一个适合我的情况或其他更适合的工作流程的 Mylyn 连接器吗 我可以推荐你使用福格林连接器 http www foglyn
  • 带测试的 Java 代码 - 无限循环?

    我尝试去了解人与人之间的关系 但是 当我运行单元测试时 测试会永远运行 没有得到结果 而且我的 CPU 使用率很高 有人能看出我的代码有什么问题吗 字符串关系是字符串的多行输入 格式为 A B C D where A是的父级B and C是
  • 可以处理超过 5 亿行的数据库

    我正在寻找一个可以处理的数据库 在合理的时间内在列上创建索引并提供结果选择查询在不到 3 秒的时间内 超过 5 亿行 低端机器 Core 2 CPU 6600 4GB 64 位系统 Windows VISTA 上的 Postgresql 或
  • PacketTunnelProvider 网络扩展不称为 Swift 3

    我正在尝试将 PacketTunnerProvider 网络扩展添加到我的项目中 方法 startTunnelWithOptions options String NSObject completionHandler NSError gt
  • React Router v4 基本名称和自定义历史记录

    我想为我的路由分配一个基本名称 我可以使用 BrowserRouter 来实现 不过 我还想指定自定义历史记录 以便我可以以编程方式导航我的用户 我可以用路由器做到这一点 然而我不能两者都做 是否可以扩展其中一个路由器以支持此功能或围绕其包
  • 找到正确的正则表达式

    我正在尝试为这种情况找到正确的正则表达式 1 1 0 我需要版本之间的前缀和后缀 可以是一切 字母 数字或什么都没有 我拥有的 static check version string return d d d test version 感谢
  • 仅当上一步已运行时才运行 GitHub Actions 步骤

    我已经在 GitHub actions 中设置了一个工作流程来运行我的测试并创建测试覆盖率的工件 我的 YAML 文件的精简版本如下所示 name Build on pull request jobs build runs on ubunt
  • 使用“r+”模式用相同长度的另一行覆盖文件中的一行

    我有一个名为vegetables carrots苹果 黄瓜 我想要做的是在 python 中打开文件 并就地修改它 而不覆盖文件的大部分 具体来说 我想覆盖apples with lettuce 这样该文件将如下所示 carrots莴苣黄瓜
  • 您能否从 YouTube Live Streaming API 获取环聊直播加入 URL?

    As the Google Hangouts API 已关闭 https developers google com hangouts support faq 我该如何使用YouTube 直播 API https developers go
  • MSbuild 用于更新 assemblyinfo 文件

    我正在编写一个批处理文件来自动执行一系列任务 其中一项任务是通过编辑解决方案中各个项目中的 assemblyinfo cs 文件来更新解决方案中的 dll 版本 然后最后调用 msbuild exe 来编译解决方案 在这方面 是否可以编写一
  • 如何从文件中获取ByteData

    我想转换一个File to a ByteData颤动中的物体 像这样的东西 import dart io File file getSomeCorrectFile This file is correct ByteData bytes By