當前位置:成語大全網 - 書法字典 - c++如何過濾txt文本中的漢字?例如:妳的,我的,121.145 . 22 . 13,妳的,我的,我只需要保留121.145。22。249900005

c++如何過濾txt文本中的漢字?例如:妳的,我的,121.145 . 22 . 13,妳的,我的,我只需要保留121.145。22。249900005

壹個漢字占兩個字節。將中文字符讀入char數組後,每個元素的值通常會超出char可以表示的範圍。因此,最簡單的方法是判斷其值是否在0~127之間,或者更嚴格地說,它是否是可以在ascii表中顯示的字符。示例代碼:

#包含?& ltstdio.h & gt

#包含?& ltstring.h & gt

#包含?& ltiostream & gt

#包含?& ltFSTREAM & gt

使用?名稱空間?std

int?主()

{

//數據寫入測試

/*ofstream?fWrite

fwrite . open(“Test“,IOs::app);

FWrite.write(“妳的我的121.145 . 22 . 13?妳的和我的“?Strlen(“妳的my 121.145.22+03?妳的我的“));

?fwrite . close();*///打開文件,假設內容為:妳的、我的、121.145 . 22 . 6438+03?妳和我的。

ifstream?fRead?fread . open(“Test“,IOs::in);

夏爾。cBuf【100】?=?{0};

fread . read(cBuf,?100);

?cout & lt& ltcBuf<。& ltendl//顯示所有字符

為了什麽?(int?我?=?0;?我& ltstrlen(cBuf);?++i)

{

//只輸出所需的字符。

如果?(cBuf【I】?& gt?0?& amp& amp?cBuf【I】?& lt?127)

{

cout & lt& ltcBuf【I】;

}

?}

cout & lt& ltendl

回歸?0;

}

運行截圖:

第壹行是全部內容,第二行是篩選內容。