我是c ++的新手,我练习如何从文件中读取字符串第一行,然后是数字,然后是字符串第二行。
示例字符串
line one, number, string line two.
有人可以帮我创建一个while循环,我知道如何打开一个文件。只需要帮助读取一串字符串,然后再读一个数字和一个字符串。
while (?? file >> strline) {
cout << strline;
cout << number;
cout << strline;
}
有关如何解决此问题的任何建议?提前谢谢。
答案 0 :(得分:0)
可以使用std::getline
string strline;
while(getline(file, strline))
{
cout << strline;
}
如果您需要该号码的实际值,可以使用std::istringstream
(必须#include <sstream>
),例如
string strline;
if(getline(file,strline))
{
// do something with the first line
}
if(getline(file,strline)) // read the second line
{
istringstream ss(strline);
double x;
ss >> x; // dump the number into x
}
if(getline(file, strline))
{
// finally read the third line
}
或者,当然,可以使用for
之类的
string strline;
int x;
for(int i=0; i<2; i++)
{
istringstream ss;
if(getline(file, strline))
{
if(i == 1) // second line
{
// do something here with ss, like
ss >> x; // dump the number into x
}
}
}
答案 1 :(得分:0)
而(文件)
{
函数getline(文件,strLine中); //读取文件内部
cout&lt;&lt; strline&lt;&lt; ENDL; //打印文件中的所有内容
}