[仿製]C++實現刪除文本文件特定行;

#include <iostream>
#include <fstream>
#include <string>
using namespace std;


string CharToStr(char * contentChar)
{
	string tempStr;
	for (int i=0;contentChar[i]!='\0';i++)
	{
		tempStr+=contentChar[i];
	}
	return tempStr;
}

void DelLineData(char* fileName, int lineNum)
{
   ifstream in;
   in.open(fileName);

   string strFileData="";
   int line=1;
   char lineData[1024] = {0};
   while(in.getline(lineData, sizeof(lineData)))
   {
       if(line==lineNum)
       {
           //strFileData+="\n";
       }
       else
       {
           strFileData+=CharToStr(lineData);
           strFileData+="\n";
       }
       line++;

   }
   in.close();

   ofstream out;
   out.open(fileName);
   out.flush();
   out<<strFileData;
   out.close();

}


int main()
{
    //cout << "Hello world!" << endl;
   // printf("%s","nihao");
    DelLineData("D:\\abc.txt",3);//刪除文檔中的第三行;
    return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章