【C++】STL(Standard Template Library)相談室 9
at TECH
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
100:デフォルトの名無しさん 08/03/03 16:27:08 >>97 std::stringにファイル名が入ってるなら そのファイル名が入ってるstd::string型のオブジェクト名 がfilenameという名前とすると char *fname = filename.c_str(); てな感じでchar *型で受け取り #include <cstring>をインクルードしておき char *piliod = strrchr(fname,'.'); で拡張子の手前のピリオド位置を取得し piliod++;ってすれば拡張子名だけchar *型で取得できる これらの操作をwchar_t用の関数に変更すれば wchar_t *型で拡張子名を取得できる まぁ、STL板だしstd::wstringを操作するとしたなら 素直にクラスのfind_last_of使って sizetype pos = filename.find_last_of(L'.')てな感じで けつからピリオドの位置見つけてpos++;して std::wstring fextenshion =filename.substr(pos)とすれば 拡張子だけ手に入る 101:デフォルトの名無しさん 08/03/03 18:54:54 が、特殊ケースを想定するとそれだけでは済まないので、 ちまちま書くよりc_strでランタイムやAPIの既存のルーチンに任せるのが定番。
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
4970日前に更新/192 KB
担当:undef