• 文件的输入与输出


    IO库类型和头文件

    1.iostream istream,ostream,iostream

    2.fstream  ifstram,ofstream,fstream

    3.sstream istringstream,ostringstream,stringstream

    IO对象无拷贝和复制

    fstream fstrm;//创建一个未绑定的文件流

    fstream fstrm(s);//创建一个fstream,并打开文件名为s的文件

    fstream fstrm(s,mode);//以指定模式打开文件

    fstrm.open(s);//打开名为s的文件绑定到fstrm上

    fstrm.close();//关闭文件

    fstrm.is_open();//返回一个booL值,指出文件是否打开

    文件操作:

     1 vector<string >  lines;
     2 ifstream in("new2.txt");
     3 string word;
     4 while (in>>word) {
     5     lines.push_back(word);
     6 }
     7 for (auto w : lines) {
     8     cout << w <<endl;
     9 }
    10 in.close();

    //文件模式 

    in,以读方式打开 ,只能对ifstream或fstream对象设定in

    out,以写方式打开,只能对ofstream或fstream对象设定out,以out模式打开会丢失文件数据

    app,每次操作前定位到文件末尾

    ate,打开文件后定位到文件末尾

    trunc,截断文件,必须设定out后设定

    binary;//以二进制方式进行IO

    ofstream out("new2.txt", ofstream::out | ofstream::trunc);

    为保留文件需要同时显式的指定app模式

    ofstream f("directory.txt", fstream::out);//没有则创建
        char s[]= "zheng 
    wang 
    li 
    zhou 
     ";//斜杠可换行
        f.write(s,sizeof(s)-1);//写数据,第二个参数是字符串的大小
        f.close();
        ifstream in1("directory.txt");
        try {
        
            if (in1) cout << "open file success!" << endl;
            else {
                throw runtime_error("Invalid Filename!");
            }
        }
        catch (runtime_error err) {
        
            cout << err.what() << "
    Try again ? Enter y or n" << endl;
            char c;
            cin >> c;
            if (!cin || c == 'n') {
            
                exit(0);
            }
        }
        string line,word1;
        vector<PersonInfo > people;
        while (getline(in1, line)) {
            PersonInfo info;
            istringstream record(line);
            record >>info.name;
            while (record >> word) {
            
                info.phones.push_back(word);
    
            }
            people.push_back(info);
    
        }
    
        //throw表达式表所遇到的无法处理的问题
        //try以关键子开始,以一个或多个catch语句结束,处理异常*/

    IO库类型和头文件//iostream istream,ostream,iostream//fstream  ifstram,ofstream,fstream//sstream istringstream,ostringstream,stringstream//IO对象无拷贝和复制IO库类型和头文件//iostream istream,ostream,iostream//fstream  ifstram,ofstream,fstream//sstream istringstream,ostringstream,stringstream//IO对象无拷贝和复制

  • 相关阅读:
    【读书笔记-数据挖掘概念与技术】数据预处理
    【读书笔记-数据挖掘概念与技术】认识数据
    数据挖掘中的基本概念
    【cs229-Lecture10】特征选择
    【cs229-Lecture8】顺序最小优化算法
    支持向量机SVM进阶
    【SPMF开源数据挖掘平台入门】MaxSP算法使用说明
    【cs229-Lecture9】经验风险最小化
    【数据清洗】2013-数据质量及数据清洗方法
    【数据清洗】2012-数据清洗及其一般性系统框架
  • 原文地址:https://www.cnblogs.com/bingzzzZZZ/p/8434176.html
Copyright © 2020-2023  润新知