Linux 下用 C 语言对二进制文件操作,我想删除末尾 16 位数据(不是清零是删除),应该怎么办?

2020-08-06 13:29:46 +08:00
 ReputationZh
查阅了一上午资料,没找到解决办法 TAT 。
2264 次点击
所在节点    Linux
8 条回复
fmumu
2020-08-06 13:45:52 +08:00
truncate ?
zyffy
2020-08-06 14:06:16 +08:00
ftruncate
tomychen
2020-08-06 14:14:01 +08:00
new_size = getfilesize()-16;// 自己实现
fread(data,size, oldfile);
fwrite(data, new_size,oldfile);//or newfile
julyclyde
2020-08-06 14:18:58 +08:00
删除?右移?
ReputationZh
2020-08-06 14:22:14 +08:00
@zyffy 这个函数的第一个参数是 int ? 有没有具体用法。
xiadong1994
2020-08-06 14:29:46 +08:00
@ReputationZh man truncate
nightwitch
2020-08-06 14:52:40 +08:00
Cooky
2020-08-06 14:58:19 +08:00
truncate

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/696133

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX