C++文件讀寫代碼分享
編寫一個(gè)程序,統(tǒng)計(jì)data.txt文件的行數(shù),并將所有行前加上行號(hào)后寫到data1.txt文件中。
算法提示:
行與行之間以回車符分隔,而getline()函數(shù)以回車符作為終止符。因此,可以采用getline()函數(shù)讀取每一行,再用一個(gè)變量i計(jì)算行數(shù)。
(1)實(shí)現(xiàn)源代碼
#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;
}
再來一個(gè)示例:
下面的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;
}
程序編譯執(zhí)行后輸出如下結(jié)果
$./a.out Writing to the file Enter your name: Zara Enter your age: 9 Reading from the file Zara 9
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。
相關(guān)文章
使用VS2010創(chuàng)建MFC ActiveX工程項(xiàng)目
VS2010開發(fā)ActiveX有兩種方法,分別是MFC和ATL。MFC開過起來比較簡單,但是最終生成的文件比較大,ATL是專門用來開發(fā)ActiveX的,但是相對(duì)比較難,必須知道很多原理機(jī)制和API。咱先從MFC開發(fā)ActiveX開始吧。2015-06-06
Qt實(shí)現(xiàn)TCP同步與異步讀寫消息的示例代碼
這篇文章主要為大家詳細(xì)介紹了如何在?Qt?中實(shí)現(xiàn)?TCP?客戶端和服務(wù)器的同步和異步讀寫消息,有需要的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-04-04
詳細(xì)解析命令行的getopt_long()函數(shù)
getopt_long支持長選項(xiàng)的命令行解析,函數(shù)中的參數(shù)argc和argv通常直接從main()的兩個(gè)參數(shù)傳遞而來2013-09-09

