• ベストアンサー

パスから最後のディレクトリだけを取得したいです

【環境】WindowsXP、VC++2005(MFC) タイトルの通りなんですが、例えば 「D:\10_test\hoge\sample」というディレクトリのパスから 「sample」だけを取得したいのですが、どうすれば出来ますでしょうか? ご教授お願いいたしますm(__)m

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

shlwapi.hのPathFindFileNameとか。 #include "shlwapi.h" //#pragma comment(lib, "shlwapi.lib") // 2005のMFCプロジェクトは不要かな LPCTSTR path = _T("D:\\10_test\\hoge\\sample"); TCHAR dir[_MAX_DIR]; lstrcpy(dir, ::PathFindFileName(path));

ya-cha
質問者

お礼

ご回答ありがとうございます。 確認いたしました! 記載の方法で取得できました!!!! ありがとうございました^^

その他の回答 (1)

  • buriburi3
  • ベストアンサー率44% (353/792)
回答No.1

MFCが使えるなら_splitpath()で分解してから_makepath()で再構成すれば良いと思う。

ya-cha
質問者

お礼

ご回答ありがとうございます。 記載の関数について調べてみました。 「_splitpath()」を行うと、ディレクトリが取得出来ることはわかったのですが、これだと 「10_test\hoge\sample」の取得になりますよね? そこからどうやってmakepathで「sample」を構成するのでしょうか?

関連するQ&A