変数name
のデータを出力ファイルに保存する場合は、data.txt
は簡単ですか?ファンクションでベクトル配列変数を使用する
いや、私がファイルを.exe
のルート"."
ディレクトリをスキャンして、十分なcmd
簡単にそれらを出力しておりますので、なぜ私は、同様のファイルに単に出力に苦労していますか?
私はthisとthisリンクを見ました。彼らは少し助けました。
ご意見やアドバイスをいただければ幸いです。 main()
で
オリジナルバージンcode
#include "stdafx.h"
#include <iostream>
#include <vector>
#include <string>
#include <experimental/filesystem>
#include <fstream>
using namespace std;
std::vector<std::string> get_filenames(std::experimental::filesystem::path path)
{
namespace stdfs = std::experimental::filesystem;
std::vector<std::string> filenames;
const stdfs::directory_iterator end{};
for (stdfs::directory_iterator iter{ path }; iter != end; ++iter)
{
if (stdfs::is_regular_file(*iter))
filenames.push_back(iter->path().string());
}
return filenames;
}
void Dirloop(){
for (const auto& name : get_filenames(".")) std::cout << name << '\n';
}
void Outfile() {
std::ofstream outputFile("data.txt", std::ios::out);
outputFile << name << std::endl;
outputFile.close();
cout << "Generated data.txt!\n";
}
int main()
{
Dirloop();
Outfile();
std::getchar();
return 0;
}
'outputFile << name << std :: endl;'名前はどこから来ますか?明らかに不可能なコードの修正に関する提案をするのは難しいです。 – user4581301
'DirLoop'関数で' name'を宣言しましたが、 'Outfile'でそれを使用しようとしています。 – Barmar
'Outfile'を' name'をパラメータとするように変更し、 'Dirloop'から呼び出します。また、 'std :: ios :: app'モードでファイルをオープンして、上書きする代わりにファイルに追加するようにしてください。 – Barmar