簡體   English   中英

從C ++文件中按字符讀取char時遇到問題

[英]Trouble reading char by char from a file in C++

所以我有這段代碼:

ifstream sFile;
sFile.open(argv[1]);
stringstream ss;
unsigned char aChar;
string aString;

while (sFile >> noskipws >> aChar) {
    ss << noskipws << aChar;
}
ss >> noskipws >> aString;
cout << noskipws << aString << endl;

我的文件包含:“ SHE SMELLS”

在標准輸出中,我看到的只是“ SHE”。 我浪費了太多時間試圖解決這個問題,有人可以幫我理解為什么會這樣嗎?

另外,這將能夠讀取擴展的ascii字母中的字符嗎?

在此頁面查看noskipws:

http://www.cplusplus.com/reference/iostream/manipulators/noskipws/

在示例中顯示了您遇到的問題,可以通過使用以下方式解決:

iss.seekg(0);

如果這樣做,這應該可以工作:

sFile.seekg(0);

在您的while循環之前。 希望是對的/有幫助。

暫無
暫無

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

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