将数据保存到txt文件中? C++
Posted
技术标签:
【中文标题】将数据保存到txt文件中? C++【英文标题】:save data into the txt file ? C++ 【发布时间】:2016-12-24 09:43:09 【问题描述】:我正在创建一个程序,用户在其中输入 mcqs 和选项,然后将数据保存到 txt
文件中。我该怎么做。我尝试了,但它不起作用。
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()
ofstream outputFile;
std::string fname;
cout<<"Enter file name";
std::getline (std::cin,fname);
outputFile.open(fname+".txt");
std::string name;
std::string mcqs;
int x;
cout<<"How many questions want \n";
cin>>x;
for(int i=1;i<=x;i=i+1)
cout<"Enter question "+i;
std::getline (std::cin,name);
outputFile << name << endl;
cout<<"Option A";
std::getline (std::cin,mcqs);
outputFile << mcqs << endl;
cout<<"Option B";
std::getline (std::cin,mcqs);
outputFile << mcqs << endl;
cout<<"Option C";
std::getline (std::cin,mcqs);
outputFile << mcqs << endl;
cout<<"Option D";
std::getline (std::cin,mcqs);
outputFile << mcqs << endl;
outputFile.close();
cout << "Done!\n";
getchar();
return 0;
我想保存mcqs
和txt
文件中的选项。谢谢
【问题讨论】:
调试器是解决此类问题的正确工具。 在询问 Stack Overflow 之前,您应该逐行逐行检查您的代码。如需更多帮助,请阅读How to debug small programs (by Eric Lippert)。至少,您应该 [编辑] 您的问题,以包含一个重现您的问题的 Minimal, Complete, and Verifiable 示例,以及您在调试器中所做的观察。 您的代码格式也应该有严重的过度工作。 【参考方案1】:您的问题是使用 cin 获取问题编号。您可以使用 get_line 和 stringstream 来读取数字。
#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
using namespace std;
int main()
ofstream outputFile;
std::string fname;
std::string str;
stringstream ss;
int x;
cout<<"Enter file name:";
std::getline (std::cin,fname);
outputFile.open(fname+".txt");
cout<<"How many questions want \n";
std::getline (std::cin,str);
ss << str;
ss >> x;
if (x == 0)
cout << "Invalid question number...!" << endl;
for(int i=1;i<=x;i=i+1)
cout<<"Enter question " << i << ":";
std::getline (std::cin,str);
outputFile << str << endl;
cout<<"Option A:";
std::getline (std::cin,str);
outputFile << str << endl;
cout<<"Option B:";
std::getline (std::cin,str);
outputFile << str << endl;
cout<<"Option C:";
std::getline (std::cin,str);
outputFile << str << endl;
cout<<"Option D:";
std::getline (std::cin,str);
outputFile << str << endl;
outputFile.close();
cout << "Done!\n";
getchar();
return 0;
【讨论】:
【参考方案2】:确保包含在顶部,并且 ofstream 是命名空间 std 的成员。
【讨论】:
以上是关于将数据保存到txt文件中? C++的主要内容,如果未能解决你的问题,请参考以下文章
在 C#.Net 中将 .xls 文件保存到 .txt 文件中