streamで固定長の文字列分解したい
以下イメージ

istreamstring ss(“0123456789”);
string no1;
int no2;
char no3;
ss >> std::setw(4) >> no1;
ss >> std::setw(4) >> no2;
ss >> std::setw(2) >> no3;

結果
no1=0123
no2=4567
no3=89

みたいな感じで
環境はコンパイラc++03、boost使えず
std::string::substr使ったやつはもう作ってます
よろしくお願いします