zoukankan      html  css  js  c++  java
  • C++中文件按行读取和逐词读取 backup

    http://blog.csdn.net/zhangchao3322218/article/details/7930857

    #include  <iostream>
    #include  <fstream>
    #include  < string >


    using   namespace  std;
     
    void  OutPutAnEmptyLine()//输出空行
    {
    cout<< " " ;
    }


     //读取方式: 逐词读取, 词之间用空格区分
    void  ReadDataFromFileWBW()
    {
    cout<<"逐词读取, 词之间用空格区分"<<endl;
    ifstream fin( "data.txt" );  
    string  s;  
    while ( fin >> s ) 
        {
    cout <<  "Read from file: "  << s << endl;  
         }
    }


    //读取方式: 逐行读取, 将行读入字符数组, 行之间用回车换行区分
    void  ReadDataFromFileLBLIntoCharArray()
    {
    cout<<"逐行读取, 将行读入字符数组, 行之间用回车换行区分"<<endl;
    ifstream fin( "data.txt" ); 
    const   int  LINE_LENGTH =  100 ; 
    char  str[LINE_LENGTH];  
    while ( fin.getline(str,LINE_LENGTH) )
    {    
    cout <<  "Read from file: "  << str << endl;
    }
    }


    //读取方式: 逐行读取, 将行读入字符串, 行之间用回车换行区分
    //相比较上种方法,该种方法比较灵活,推荐使用
    void  ReadDataFromFileLBLIntoString()
    {
    cout<<"逐行读取, 将行读入字符串, 行之间用回车换行区分"<<endl;
    ifstream fin( "data.txt" );  
    string  s;  
    while ( getline(fin,s) )
    {    
    cout <<  "Read from file: "  << s << endl; 
    }
    }


    //带错误检测的读取方式
    void  ReadDataWithErrChecking()
    {
        string  filename =  "dataFUNNY.txt" ;  
        ifstream fin( filename.c_str());  
        if ( !fin ) 
        {   
    cout <<  "Error opening "  << filename <<  " for input"  << endl;   
    exit(- 1 );  
        }
    }


    int  main()
    {
    ReadDataFromFileWBW();  //逐词读入字符串 
    OutPutAnEmptyLine();  //输出空行


    ReadDataFromFileLBLIntoCharArray();  //逐词读入字符数组
    OutPutAnEmptyLine();  //输出空行


    ReadDataFromFileLBLIntoString();  //逐词读入字符串
    OutPutAnEmptyLine();  //输出空行


    ReadDataWithErrChecking();  //带检测的读取
    return   0 ;
    }

  • 相关阅读:
    BZOJ 2588
    BZOJ 3524
    BZOJ 3932
    Bzoj1013--Jsoi2008球形空间产生器
    Codevs1743--反转卡片
    Bzoj1208--Hnoi2004宠物收养所
    Bzoj1112--Poi2008砖块Klo
    后缀自动机学习笔记
    Bzoj1588--Hnoi2002营业额统计
    Bzoj1056--Haoi2008排名系统
  • 原文地址:https://www.cnblogs.com/huashiyiqike/p/4105007.html
Copyright © 2011-2022 走看看