您的位置:首页 > 编程语言 > C语言/C++

C++文件读写代码分享

2015-07-08 09:16 567 查看

编写一个程序,统计data.txt文件的行数,并将所有行前加上行号后写到data1.txt文件中。

算法提示:

行与行之间以回车符分隔,而getline()函数以回车符作为终止符。因此,可以采用getline()函数读取每一行,再用一个变量i计算行数。

(1)实现源代码

#include <iostream>
#include <fstream>
#include <string>
#include <sstream>
using namespace std;
int coutFile(char * filename,char * outfilename)
{
ifstream filein;
filein.open(filename,ios_base::in);
ofstream fileout;
fileout.open(outfilename,ios_base::out);
string strtemp;
int count=0;
while(getline(filein,strtemp))
{
count++;
cout<<strtemp<<endl;
fileout<<count<<" "<<strtemp<<endl;
}
filein.close();
fileout.close();
return count;
}
void main()
{
cout<<coutFile("c:\\data.txt","c:\\data1.txt")<<endl;
}

再来一个示例:

下面的C++代码将用户输入的信息写入到afile.dat,然后再通过程序读取出来输出到屏幕

#include <fstream>
#include <iostream>
using namespace std;
int main ()
{
char data[100];
// open a file in write mode.
ofstream outfile;
outfile.open("afile.dat");
cout << "Writing to the file" << endl;
cout << "Enter your name: ";
cin.getline(data, 100);
// write inputted data into the file.
outfile << data << endl;
cout << "Enter your age: ";
cin >> data;
cin.ignore();
// again write inputted data into the file.
outfile << data << endl;
// close the opened file.
outfile.close();
// open a file in read mode.
ifstream infile;
infile.open("afile.dat");
cout << "Reading from the file" << endl;
infile >> data;
// write the data at the screen.
cout << data << endl;
// again read the data from the file and display it.
infile >> data;
cout << data << endl;
// close the opened file.
infile.close();
return 0;
}

程序编译执行后输出如下结果

$./a.out
Writing to the file
Enter your name: Zara
Enter your age: 9
Reading from the file
Zara
9

以上所述就是本文的全部内容了,希望大家能够喜欢。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ 文件读写