我想将文本文件中的某些文本放入数组中,但将数组中的文本设置为单个字符。 我该怎么做?C++将文本从文本文件放入数组作为单独的字符
目前我有
#include <iostream>
#include <fstream>
#include <string>
#include <cmath>
#include <vector>
#include <sstream>
using namespace std;
int main()
{
string line;
ifstream myfile ("maze.txt");
if (myfile.is_open())
{
while (myfile.good())
{
getline (myfile,line);
// --------------------------------------
string s(line);
istringstream iss(s);
do
{
string sub;
iss >> sub;
cout << "Substring: " << sub << endl;
} while (iss);
// ---------------------------------------------
}
myfile.close();
}
else cout << "Unable to open file";
system ("pause");
return 0;
}
我猜函数getline得到在一次一行。现在,我将如何将该行分割为单个字符,然后将这些字符放入数组中? 我正在一个C++课程的第一次,所以我新,是不错的:P
您可能想再次看看C++(尤其是c)标准库*中的各种函数做了什么。很可能你正在做的比你需要的更难,因为你误解了类似c语言的字符串或IO的东西。 – dmckee
'std :: string'是指一个字符数组,为什么你想把它们放到另一个数组中呢?另外,你的'fstream'代码写得很糟糕,你有没有把它从无用的cplusplus.com复制过来? –
[不要循环while good()](http://stackoverflow.com/questions/5605125/why-is-iostreameof-inside-a-loop-condition-considered-wrong)。 (问题标题提到了eof,但同样的问题在这里:检查在输入之前)。 –