スペースで区切られた中国語や英語のファイルを読み込むためのC ++

// ショーファイルの内容- sbumpc()の例 
の#include <iostreamの>      // はstd :: coutを、STD :: streambufを 
する#include <fstreamの>       // はstd ::はifstream 
の#include <cstdioを>        // EOF 

使って 名前空間はstd; 


BOOL readWord(STD ::のIStream&、STD :: ストリングワード){
     int型C。
    std ::ストリームバッファ&SB = * .rdbuf(); 
    word.clear(); 
    裁判所未満 << " --------------- 1 " 

    一方、((C = sb.sbumpc())!= EOF){
        もし(C == '  ' || C == ' \ n ' || C == ' \ R ' || C == ' \ T ' || C == ' \ V ' || 
            C == ' \ F ' || C == ' \ 0 ' ){ 
            
            場合(word.empty()){
                 もし、(C == ' \ n ' ){ 
                    COUT << " ------------- --2 " ;
                    単語 + = "END " ;
                     戻り ; 
                } 
                続ける; 
            } そう{
                 もし、(C == ' \ n ' 
                    sb.sungetc(); // 次の位置に予め 
                    COUT << " ------------ --- 5 " ;
                 戻り ; 
            } 

        } 
        COUT << " --------------- 3 」を
        word.push_back(C); 
    }
    //はeofbitをトリガー
    取得(); 
    COUT << " --------------- 4 " << word.empty()。
    返しますword.empty(); 
} 

int型のmain(){ 
  
  のstd ::はifstreamフィン(" test.txtの" )。
  std :: 文字列の単語。
  一方、(readWord(フィン、単語)){ 
    COUT <<ワード<< ENDL。
  } 
  
  
  戻り 0 
}

test.txtの

中国の万里の長城こんにちは空自
ASAA ASA AS ASA 
vdvsd 
sjklmnの
sdfsdf

出力:

 

おすすめ

転載: www.cnblogs.com/pengwang52/p/11304536.html