利用C++ truncate实现文件大小限制的方法

   2024-09-30 8840
核心提示:在C++中,你可以使用truncate()函数来实现文件大小限制#includeiostream#include fcntl.h#include unistd.h#include sys/stat.h#

在C++中,你可以使用truncate()函数来实现文件大小限制

#include<iostream>#include <fcntl.h>#include <unistd.h>#include <sys/stat.h>#include <cstring>int main() {    const char *file_path = "example.txt";    off_t max_size = 1024; // 设置最大文件大小为1KB    int fd = open(file_path, O_RDWR | O_CREAT, S_IRUSR | S_IWUSR);    if (fd == -1) {        std::cerr << "Error opening file: "<< strerror(errno)<< std::endl;        return 1;    }    // 将文件截断到指定大小    if (ftruncate(fd, max_size) == -1) {        std::cerr << "Error truncating file: "<< strerror(errno)<< std::endl;        close(fd);        return 1;    }    // 关闭文件描述符    close(fd);    std::cout << "File size has been limited to "<< max_size << " bytes."<< std::endl;    return 0;}

这个示例程序首先打开一个名为example.txt的文件(如果不存在,则创建它)。然后,它使用ftruncate()函数将文件大小限制为1KB。最后,关闭文件描述符。

请注意,这个示例仅适用于UNIX和类UNIX系统(如Linux和macOS)。在Windows上,你需要使用_chsize()函数来实现类似的功能。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式 | 网站留言    |  赣ICP备2021007278号