ちぅか,昨日のをスコープ限定型演算子構文糖(http://d.hatena.ne.jp/Cryolite/20050205#p1 の『[Boost][Range]iterationできるrange』を参照)使って書いたら楽しいことになる予感!!
namespace cry{ namespace iostreams{ namespace composite_operators{ // operator>> をてけとーに定義 }}} namespace io = boost::iostreams; namespace cry_io = cry::iostreams; using namespace cry::iostreams::composite_operators; io::file_source( "inputfile", std::ios_base::binary ) >> cry_io::newline_filter( "cry_io::newline::posix" ) >> cry_io::u_convert_filter( "Shift_JIS" ) >> io::tee( cry_io::u_convert_filter( "UTF-8" ) >> io::back_inserter( u ) , cry_io::u_convert_filter( "EUC-JP" ) >> cry_io::newline_filter( "cry_io::newline::dos" ) >> io::file_sink( "outputfile", std::ios_base::binary ) );
おぉ,データの流れ(ストリーム)が見える!!見えるぞおおおぉぉぉ!!