繁体   English   中英

如何使用dlang读取二进制文件数据

[英]how to read binary file data using dlang

我正在尝试从一个二进制文件中的特定位置读取结构数据。 发现我可以使用import std.stdio及其文件,但是我似乎发现的全部都是关于字符串处理的。

据我所知,我将代码用c代码编写在由几种不同结构组成的二进制文件中,并且据我所知,这些代码都位于oneliner中。 为了找到特定的结构,我需要像旧的c一样,

  1. 打开文件进行读取..(二进制读取??)
  2. 使用sizeof并移动到结构数据的起始位置以进行读取
  3. 将数据(struct.sizeof数据)读取到接收缓冲区中,
  4. 关闭档案

有关std.stdio.File#read的文档,它涉及读取整个或最大大小的内容,但是找不到如何在c代码行下读取内容?

fseek(filehandle, sizeof(firstStructData), SEEK_SET));
read(filehandle, (char *)nextReceivingBuffer, sizeof(nextReceivingBuffer))

有什么想法或提示吗?

尝试File.seekFile.rawRead 它们的工作方式与C语言类似,但是rawRead根据您处理输出缓冲区的大小确定读取计数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM