c++ - 使用整数作为外流文件名?

标签 c++ file-io

我正在尝试编写一个 mpi 程序,其中每个节点都知道自己的 rank,这是一个整数。

在这个程序中,我希望每个节点创建一个.txt文件,文件名是它的rank。也就是说,我希望程序生成一个名为 rank.txt 的文件,其中 rank 是一个整数。

我知道如何将 int 转换为 string,但我很困惑如何将该字符串与 .txt 结合起来将其放入文件名中。最简单的方法是什么?

提前致谢。

编辑

我已将数字与 .txt 合并,并将它们放入字符串 filename 但是当我键入 std::ofstream out_stream(filename) 编译器告诉我

no matching constructor for initialization `std::outstream`

如何将字符串放入文件名中?

最佳答案

问题是 std::ofstream 没有接受 std::string 的构造函数。您需要传递 const char*,所以只需说:

std::ofstream out_stream(filename.c_str());

不过,随着最新的标准修订,情况发生了变化,因此请查看您的编译器文档以了解如何启用 C++11。

关于c++ - 使用整数作为外流文件名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13178245/

相关文章:

c++ - 文件流实际上是如何工作的?

node.js - 在node.js中多个同时访问文件写入会出现文件写入错误

c - 读/写结构到文件 - c

c++ - 如何在 Ubuntu 14.04.3 LTS 上构建 dolphin (Trusty Tahr)

c++ - 为什么打印字符串时得到的是十六进制值?

c++ - C/C++ 期望主表达式在 "else"之前

python - 在 R 之外编写 RDS 文件

c++ - 将错误代码与 C++20 协程一起使用,即与 Boost ASIO 一起使用可等待项

c++ - 运行时opencv(QT)中的空指针

Python IO 大师 : what are the differences between these two methods?