C++ ------------------------- 文件的复制

#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;
}

你可能感兴趣的:(C++ ------------------------- 文件的复制)