簡體   English   中英

如何僅從ifstream中讀取字符並忽略c ++中的數字?

[英]How to read only chars from ifstream and ignore numbers in c++?

所以我有一個包含數字和一堆字符的文件,我想將它們存儲在我自己的數據類型中,我稱之為Grid,它基本上是一個二維向量,具有一些有用的功能,可以讓我繼續進行數據存儲而不必擔心還要別的嗎。 無論如何,這是輸入文件的示例:

---sa-fs-gäörq-qwe-fs

-第21-2頁

4 -----

我想逐個字符讀取所有這些數據並將它們存儲在我的向量中,除非我想忽略數字。 這是我所做的一些事情

int main()
{
    ifstream file;
    file.open("input.txt");
    Grid<char>g(5,5) //initializing 2d vector 5x5
    while(!file.eof())
    {
        for (int i=0; i<5;i++)
             for(int j=0; i<5;j++)
                 file>>(g[i][j]);
    }
 return 0;

}
char c;
while( file >> c ) {

    if( !isdigit( c ) ) {
//  if( ( c >= 'A' && C <= 'Z' ) || ( c >= 'a' && c <= 'z' ) ) {

        // do stuff with c
    }


}

或者更習慣一點,請使用isalpha 這可能取決於您的C ++環境的語言環境設置。 理想情況下,除非可以保證輸入文件沒有問題,否則應使用良好的Unicode庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM