首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >读取fat16 img文件内存位置的值

读取fat16 img文件内存位置的值
EN

Stack Overflow用户
提问于 2012-11-18 23:46:46
回答 3查看 402关注 0票数 1

我有一个FAT16镜像,我想用C语言复制存储在此镜像中特定内存位置的数据。

如果使用十六进制编辑打开myful16.img文件

代码语言:javascript
复制
0000A320   44 54 FC 0C  19 85 13 E9  F6 D5 20 7F  56 24 EB A7  DC 2F 54 7A  20 10 9F 80  54 45 BB AE  E9 C2 6E 08  08 4F 01 11  16 EF 1B A7  1E 00 00 01  05 3B F0 A8  DT........ .V$.../Tz ...TE....n..O...........;..

我如何访问say 0xA322?

唯一的方法是用open()打开它,然后计算到这个地址为止的字节数?

谢谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-11-18 23:50:04

使用C标准库打开fopen,然后使用fseek直接转到您感兴趣的地址,然后使用fread或任何对您来说最方便的读取函数。

如果您必须直接使用POSIX syscall,则可以分别使用openlseekread

票数 0
EN

Stack Overflow用户

发布于 2012-11-18 23:50:27

您可以使用fopen()fseek(),当然还有fread()来读取感兴趣的字节。

票数 0
EN

Stack Overflow用户

发布于 2012-11-18 23:51:18

您可以使用open

然后用read()函数将文件读入buffer

然后从地址0xA322复制

代码语言:javascript
复制
memcpy(buffer2, buffer+0xA322, len);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13441685

复制
相关文章

相似问题

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