C++写文件时主动刷新磁盘文件大小
2023-12-13 04:47:13
一.效果
如下图所示,test.log是我正在写入的文件。
二.实现
#include <fstream>
#include <io.h>
#include <iostream>
#include <stdio.h>
class OfSteamImmediately : public std::ofstream
{
public:
OfSteamImmediately()
{
}
~OfSteamImmediately()
{
if (std::ofstream::is_open())
{
std::ofstream::close();
}
}
void open(const char *path, ios_base::openmode mode = ios_base::out)
{
// 访问protected变量_M_file
class MyFileBuf : public std::filebuf
{
public:
FILE *file()
{
return _M_file.file();
}
};
std::ofstream::open(path, mode);
auto fb = std::ofstream::rdbuf();
FILE *fp = ((MyFileBuf *)fb)->file();
文章来源:https://blog.csdn.net/caoshangpa/article/details/134959832
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!