编写C++程序完成以下功能: (1) 输入一个文本文件名; (2) 打开文件名,在该文件的每一行前面加行号

2024-12-28 14:19:20
推荐回答(1个)
回答1:

#include
#include
#include
using namespace std;

int main(int argc, char* argv[])
{
char m_stFileName[256];
char buf[2048];
ifstream fin;
ofstream fout;
stringstream sout;

cin.getline(m_stFileName,255);
if(strlen(m_stFileName)==0)
{
cout<<"请输入文件名!"< //MessageBox("请输入文件名或选取文件!");
return 0;
}
int num=1;
fin.open(m_stFileName,ios::in);
while(!fin.eof())
{
fin.getline(buf,2047);
sout< cout<<"正在处理第"< num++;
//m_stShow.Format("正在处理第%3d行",num);
//UpdateData(FALSE);
}
cout<<"正在准备输出到文件..."< //m_stShow="正在准备输出到文件...";
//UpdateData(FALSE);
fin.close();

//m_ctrlPro.SetRange(0,num);
//m_ctrlPro.SetPos(0);

num=1;
fout.open(m_stFileName,ios::out);
while(!sout.eof())
{
sout.getline(buf,2047);
fout< cout<<"正在输出第"< num++;
//m_stShow.Format("正在输出第%3d行",num);
//m_ctrlPro.SetPos(num);
//UpdateData(FALSE);
}
//m_ctrlPro.SetPos(0);
fout.close();
return 1;
}
注释部分是窗口模式下的句子。特意改成控制台模式。

运行效果:

1 白羊座女性最适合的英文名字:
2 Malcolm 、Joan、Niki、Betty、Linda、Whitney、Lily
3
4 金牛座男性最适合的英文名字:
5 Fred、Gary、William、Charles、Michael、Karl
6
7 金牛座女性最适合的英文名字:
8 Barbara、Elizabeth、Helen、Katharine、Lee、Ann、Diana、Fiona
9