区切り文字であるドル記号に到達するまで、ファイルから文字列を読み取っています。ただし、入力イテレータは空白をスキップしているため、作成された文字列にはスペースがありません。この場合、私が望むものではありません。スキップ動作を停止する方法はありますか? もしそうなら、どのように?
これが私のテストコードです。
#include <iostream>
#include <fstream>
#include <iterator>
#include <string>
// istream iterator is skipping whitespace.  How do I get all chars?
void readTo(std::istream_iterator<char> iit, 
            std::string& replaced)
{
   while(iit != std::istream_iterator<char>()) {
     char ch = *iit++;
     if(ch != '$')
      replaced.push_back(ch);
     else
        break;
   }
}
int main() {
   std::ifstream strm("test.txt");
   std::string s;
   if(strm.good()) {
       readTo(strm, s);
       std::cout << s << std::endl;
   }
    return 0;
}