#include <fstream>
using namespace std;
int copyFile(char* sourceFile,char* newFile)
{
ifstream in;
ofstream out;
in.open(sourceFile);
if (in.fail()) {
// 打开文件失败
cout << "打开文件失败" << endl;
in.close();
out.close();
return 0;
}
out.open(newFile);
if (out.fail()) {
cout << "打开文件失败" << endl;
in.close();
out.close();
return 0;
}
//开始复制
out << in.rdbuf();
out.close();
in.close();
return 1;
}
int main()
{
char sourceFile[256];
char newFile[256];
cout << "请输入源文件:" << endl;
cin >> sourceFile;
cout << "请输入目标文件:" << endl;
cin >> newFile;
if (copyFile(sourceFile, newFile)) {
cout << "复制成功......." << endl;
}else
{
cout << "失败了, - -!" << endl;
}
return 0;
}
如果想一行一行的进行处理:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main(int argc, const char * argv[])
{
ifstream in("/Users/user/Downloads/Cindy/cindy.obj");
string line;
int index = 1;
if(in){
// have no '\n',
while (getline(in,line)) {
//store the lines to a vector or list, use method insert
printf("%d : %s \n",index++,line.c_str());
}
in.close();
}
return 0;
}