这是读取并显示的运行结果:
帮你改了一下程序,你试试吧,有问题再问:
#include
#include
using namespace std;
char s[80];
int main()
{
string a[100]; //采用 string 类型,存100行的文本,不要用数组
int i=0;
ifstream infile;
infile.open("d:\abc\0.txt",ios::in);
while(!infile.eof()) // 若未到文件结束一直循环
{
getline(infile, a[i], '\n');//读取一行,以换行符结束,存入 a[] 中
i++; //下一行
}
for(int ii=0;ii {
cout<< a[ii] << endl;
}
infile.close();
}
只读一行的话,代码本身无错。你的问题是,文件0.txt中可能第一行就是个回车符,所以读进来了空行。文件常常不只有一行,所以要反复读取,反复处理。这样试试:
void main(void){
char s[80];
ifstream infile;
infile.open("0.txt",ios::in);
while(!infile.eof()){//文件没有结束则继续读取.
infile.getline(s,80);
cout< }
infile.close();
}