gpt4 book ai didi

c - 从文件中删除最后两个字节或忽略文件的最后两个字节在 C 中

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

这里我正在为文件实现 CRC 16 以进行文件验证。

这里我在文件末尾附加了 2 个字节的 CRC。当文件将在目标设备上接收时,我必须计算这个文件的 CRC,没有最后两个字节

这是我在文件末尾附加 CRC 后的数据。

test123
wU

现在,当我再次计算目标设备上的 CRC 时,我想忽略最后两个字节。这里我有一个常用函数,我在其中以读取模式打开文件并计算 CRC。这次我想使用相同的功能。我有一个解决方案使另一个功能与前一个相同,并达到 filesize-2。但不想将功能复制两次。我想删除最后两个字节。

那么有人对此有建议或解决方案吗?

最佳答案

此外,您是否需要帮助截断文件中的两个字节?

目标上有什么样的 API。

在 POSIX 上,您可以打开 文件,然后 off_t pos = lseek(fd, 0, SEEK_END) 寻找到结尾,返回位置。如果 (pos == (off_t) -1) 那么调用失败。如果调用成功,你可以直接ftruncate(fd, pos - 2)(前提是pos >= 2)。

关于c - 从文件中删除最后两个字节或忽略文件的最后两个字节在 C 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9612396/

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