首页 > 代码库 > C++ - 删除文本的最后一行 代码(C++)

C++ - 删除文本的最后一行 代码(C++)

删除文本的最后一行 代码(C++)


本文地址: http://blog.csdn.net/caroline_wendy


读取文本的每行("\n"), 存储入数组vector<string>, 输出时, 少输出最后一行, 即可.


代码:

/*
 * main.cpp
 *
 *  Created on: 2014.06.08
 *      Author: Spike
 */

/*vs 2012*/

#include <windows.h>
#include <fstream>
#include <iostream>
#include <string>
#include <vector>

using namespace std;

int main()
{
	vector<string> tmp_files;

	ifstream infile( "w.txt" );
	if (!infile) {
		cout << "fail!" << endl;
		return 0;
	}

	string lineContent;
	while ( getline( infile, lineContent, ‘\n‘ ) ){
		tmp_files.push_back(lineContent + "\n" );
	}
	infile.close();

	ofstream outfile( "w2.txt",ios::out );
	vector<string>::iterator siter = tmp_files.begin();

	copy( tmp_files.begin(), tmp_files.end()-1, ostream_iterator<string>(outfile) );
	cout << "ok!" << endl;
	outfile.close();

	return 0;
}


输出:

原始文本(w.txt):
Female
Sister
Girl
Woman
Old Woman

输出文本(w2.txt):
Female
Sister
Girl
Woman