我有stringstream對象。它是通過爲什麼stringstream :: str()會截斷字符串?
stringstream ss;
boost::iostreams::copy(inp,ss);
從
boost::iostreams::filtering_streambuf<boost::iostreams::input> inp;
填充實際持有中ungzipped文件。
現在,如果我沖洗stringstream的內容與
std::ofstream ofs(path_to_file,std::ios_base::out|std::ios_base::binary);
ofs << ss.rdbuf();
一切文件就可以了。文件填寫完整的正確數據。
但如果我代替沖洗到文件結構字符串這樣
std::string s = ss.str();
含量介於中間截斷。它不是一個持久性錯誤,它顯然取決於字符串緩衝區的內容。
內容爲多種語言的HTML文件。
它可能是什麼?謝謝。
由於空終止在這兩種情況下,角色的處理方式不同。 (可能) –