我有如下功能:讀線,結尾沒有「 r」字符
void process (std::string str)
{
std::istringstream istream(str);
std::string line;
std::string specialStr("; -------- Special --------------------\r"); // win
//std::string specialStr("; -------- Special --------------------"); //linux
while (getline(istream,line))
{
if (strcmp(specialStr.c_str(), line.c_str()) != 0)
{
continue;
}
else
{
//special processing
}
}
}
我讀通過線的std :: istringstream行線,採用getline
,直到我「見面「特殊字符串 之後我應該爲下一行做一些特殊處理。 特殊字符串是:
; -------- Special --------------------
當我在閱讀窗口的相應行線將其與 '\ r' 端:
(; -------- Special --------------------\r
) 在Linux中沒有 '\ R' 出現在末尾。 有沒有一種方法可以一致地讀取這些行,而無需區分它是linux還是windows?
感謝
你是否可能以二進制模式打開了流? – jrok 2013-04-28 13:29:48
std :: string str; //是一個參數std :: istringstream isaStream(str); //這樣我打開stringstream – Yakov 2013-04-28 13:31:50
你從哪裏得到'str'的內容? (你可以張貼一些代碼,你懂的) – jrok 2013-04-28 13:33:06