C++基础::文件流

来源:互联网 发布:淘宝密令符号 编辑:程序博客网 时间:2024/05/21 10:40

构造及文件打开与否的判断

  • 构造

    const std::string filename;std::ofstream ofs(filename);                    // C++11std::ofstream ofs(filename.c_str());                    // before C++11
  • 文件打开成功与否的判断

    std::ifstream ifs(filename);if (!ifs)                    // if (!ifs.good()){    std::cerr << "cannot open the input file \"" << filename << "\"" << std::endl;    exit(EXIT_FAILURE);}

从文件流中读数据的方式

std::ifstream ifs(filename);assert(ifs.good());
  • 逐字符

    char c;while (ifs.get())    std::cout << c;
  • 逐行

    std::string line;while (std::getline(ifs, line, '\n'))                        // std::getline()的头文件在 <string>    std::cout << line << std::endl;
  • 逐单词(以空格为分割)读取

    std::string word;while (ifs >> word)    std::cout << word << std::endl;

临时创建的文件流

std::ofstream("./1.txt") << "hello";std::ofstream("./1.txt", std::ios::app) << " world!" << std::endl;std::ifstream ifs("./1.txt");assert(ifs.good());std::string line;while (std::getline(ifs, line, '\n'))    std::cout << line << std::endl;
0 0
原创粉丝点击