C++将文本写入文件,如何多行

标签 c++ writetofile

如何将多行写入一个文件? ...这就是我所拥有的...此外,某些行包含如下文本:#import <Foundation/Foundation.h>我该怎么做呢?下面的代码是我现在拥有的..

//Creates Config.h
        FILE * pFile;
        char *buffer = "//Empty Header File";
        char file [256];
        sprintf (file , "%s/Desktop/%s/Control.h",homeDir, game_name);
        pFile = fopen (file, "w+");
        fwrite (buffer , sizeof(char), sizeof(buffer), pFile);
        fclose (pFile);

最佳答案

由于这是 C++,我建议您使用标准 IOStreams 库并使用具体的文件流类 std::ifstreamstd::ofstream 来处理文件。他们实现 RAII处理文件的关闭,并使用内置运算符和 read()/write() 成员函数分别执行格式化和未格式化的 I/O。此外,它们与标准 C++ 字符串类 std::basic_string 的使用很好地融合在一起。

话虽如此,如果我们在 C++ 中正确实现它,它应该如下所示:

std::string path     = "/Desktop/";
std::string filename = homeDir + path + game_name + "/Control.h";

std::ofstream file(filename, std::ios_base::app);

这处理打开文件,但正如您所说,您希望将多行写入一个文件。这很简单。每当你想放一个换行符时,只需使用 '\n' 即可:

file << buffer << '\n';

如果您向我们提供有关您的问题的更多信息,我将能够在我的回答中详细说明。但在您这样做之前,以上内容就足够了。

关于C++将文本写入文件,如何多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21818649/

相关文章:

ios - UIImagePNGRepresentation writeToFile 可以捕获错误吗?

c# - 在 C# 应用程序性能中访问 C++ 代码

c++ - LNK2019 : unresolved extrenal symbol when using std::ifstream

C++ 发送返回 SOCKET_ERROR

c++ - 如何在 macOS 上为 Qt 窗口使用 Objective-C 变量和方法?

ios - 在 Objective C/ios 中本地保存文件

IOS 内存管理 - 将视频写入临时文件

java - 将整数数组写入文件

c# - 将 3d int 数组写入文件(并更新它)的最佳方法?

c++ - 是否可以为 fftw 使用共享内存?