2010年08月19日

文字列の分割 C++

C++にはsplit関数がないので文字列を分割するのが面倒です。
Cにあるstrtok関数を使うのも面倒なので、検索関数findと部分列取り出し関数substrを用いて、文字列を二つに分けるサンプルコードを書いてみました。サンプルコードでは絶対パスの文字列を分割し、ファイル名を取り出しています。


    string inputfilename="a\\b\\c\\ddd.txt";

int div;//分割ポイント 
div=inputfilename.find_last_of("\\")+1;//+1は次の文字列を\\の後からはじめさせるため。
string firststr,laststr;
laststr=inputfilename.substr(div);//ddd.txt divから最後までを取り出す。
firststr=inputfilename.substr(0,div);// a\\b\\c\\ 最初からdiv前まで取り出す。

posted by hougi at 14:06| Comment(38) | 日記 | このブログの読者になる | 更新情報をチェックする
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。