6

重複の可能性:
C++ で int を文字列に変換する最も簡単な方法

.vtk ファイルの作成中に int 変数を挿入するにはどうすればよいですか? k ステップごとにファイルを作成したい。つまり、 file_no_1.vtk 、 file_no_2.vtk 、 ... から file_no_49.vtk までの一連のファイルが必要です。

while(k<50){
  ifstream myfile;

  myfile.open("file_no_.vtk");

  myfile.close();

  k++;
}
4

3 に答える 3

13

C++11 の場合:

while(k<50){
  ifstream myfile("file_no_" + std::to_string(k) + ".vtk");
  // myfile << "data to write\n";
  k++;
}
于 2012-07-11T17:06:51.117 に答える
4

stringstream(インクルード)を使用<sstream>:

while(k < 50){
    std::ostringstream fileNameStream("file_no_");
    fileNameStream << k << ".vtk";

    std::string fileName = fileNameStream.str();

    myfile.open(fileName.c_str());

   // things

    myfile.close();

    k++;
}
于 2012-07-11T17:07:18.033 に答える
2

このような:

char fn [100];
snprintf (fn, sizeof fn, "file_no_%02d.vtk", k);
myfile.open(fn);

または、先行ゼロが必要ない場合(例が示しています):

snprintf (fn, sizeof fn, "file_no_%d.vtk", k);
于 2012-07-11T17:03:32.417 に答える