0
我拼命嘗試在ostringstream中寫入數據,然後將數據傳送到其他對象的istringstream中或文件中。從ostringstream傳遞到istringstream和文件
std::ostringstream oss;
oss << "Hello World";
對於第一個目的,我試試這個:
iss.basic_ios<char>::rdbuf(oss.rdbuf());
但是一個簡單的 「iss.str()」 返回什麼都沒有。 (第一個問題)
後來,當我嘗試:
std::ofstream ofs("test.txt");
ofs << oss.rdbuf();
ofs.close();
沒有寫入該文件test.txt的英寸(第二個問題)
預先感謝您對stringstream和streambuf之間的內部關係的任何解釋。
那麼,將issbuf中的streambuf遊標設置爲開始會有趣嗎? (即使在oss繼續使用時設置streambuf可能會很危險) – fcaillaud
或者我有義務將stringstream複製爲:iss.str(oss.str())和ofs << oss.str()? – fcaillaud
@ user2928422我認爲後者是最合乎邏輯和直接的解決方案,所以是:'ofs << oss.str()'。 – 0x499602D2