相关疑难解决方法(0)

如何在C中截断文件?

我正在使用C将一些数据写入文件.我想删除文件中写入的先前文本,以防它比我现在写的更长.我想减小文件的大小或截断直到结束.我怎样才能做到这一点?

c file

44
推荐指数
4
解决办法
8万
查看次数

fstream从二进制文件的末尾删除N个字节

是否可以使用fstream(或类似的东西)从C++中的二进制文件末尾删除N个字节?我不想读取整个文件,剪切并再次写入,但由于它是从文件的末尾看起来它不应该是这样的问题.

谢谢你的建议.

c++ fstream

4
推荐指数
1
解决办法
1806
查看次数

在Windows上添加/删除文件末尾的字节

所以,我环顾四周,但找不到从文件末尾删除字节而不重写整个文件的方法.我发现一个truncate函数适用于linux,但没有为windows找到任何东西.现在,显然,要扩展文件,我可以用空字节填充结尾,但是为了减少文件的大小,是否真的需要在Windows上重写整个文件?或者是否有一个函数,可能在windows.h,允许我,像truncate在Linux上,重新分配文件的大小?

编辑:  我刚刚找到该功能_chdir(int,long),我正在阅读如何使用它.

编辑:  而且,为什么确实fstream遗漏了这个重要的功能?

编辑:  好的,所以它似乎_chdir()不起作用(我忘了提这个,顺便说一句),因为该函数必须支持大于4 GB的文件 - 即,我使用的是64位文件指针.我认为这将是固有的,但在阅读了论据后chsize,长度不是size_t.

c++ windows truncate filesize

3
推荐指数
1
解决办法
2157
查看次数

标签 统计

c++ ×2

c ×1

file ×1

filesize ×1

fstream ×1

truncate ×1

windows ×1