gpt4 book ai didi

c - 在 C 中打开 .dat 文件

转载 作者:太空宇宙 更新时间:2023-11-04 04:06:04 25 4
gpt4 key购买 nike

我是一名新手程序员,只是有一个关于在 C 中打开 .dat 文件的问题。

我从 friend 那里收到了一个 .dat 文件,这些是关于如何打开它的说明:

The first 4 bytes contain an integer number that indicates how many subsequent bytes you can throw away. The byte after that contains the ASCII code for a single letter in the message. The next 4 bytes contain the number of junk bytes that you can throw away, and then read the next letter, etc. The last byte in the file will be the last letter in the message.

我真的只是在寻找一种方法来查看文件的各个字节;在这一点上我很困惑......

最佳答案

您可以使用 fread()从文件和 fseek() 中读取字节寻求不同的位置(例如“丢弃字节”)。

但是,要解析第一个数字,您需要知道文件的字节顺序,除非它们实际上是表示数字的 4 个 ascii 字符;在这种情况下,您可以使用 atoi() 来获取数字。

下面是一些示例代码:

unsigned char buf[4];
FILE *fp = fopen("test.dat", "rb");
while(!feof(fp)) {
fread(buf, 4, 1, fp); // read 4 bytes
int throw_away = do_some_magic_to_get_the_number(buf);
fseek(fp, throw_away, SEEK_CUR); // skip the given number of bytes
fread(buf, 1, 1, fp); // read one byte
// your character is now in buf[0]
}

关于c - 在 C 中打开 .dat 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5773097/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com