Delphiメモ

No031:フォルダ名を取り出す

「C:\Program Files\Borland\」なるフォルダがあったとする。
今回はそのBorlandにあたる部分を取り出す方法。

とりあえずどうすれば最後のフォルダ名だけ取り出せるのか。
手順は以下の通り。
1.ExcludeTrailingPathDelimiter関数で最後尾の\を取り除く
2.ExtractFileName関数で取り出す。

まず最初の手順、ExcludeTrailingPathDelimiter関数で最後尾の\を取り除く。
関数の定義は、

function ExcludeTrailingPathDelimiter(const S: string): string;

となっている。Sにフォルダパスを指定すれば最後尾の\が取り除かれて返される。
似たような関数にExcludeTrailingBackslash関数というのがあるが、
こちらは使用を推奨されていないので大人しくExcludeTrailingPathDelimiter関数を使うべし。

次に\を取り除いた文字列をExtractFileName関数の引数に指定する。
これで前の余分なファイルパスがカットされる。
以下は例示。

var
  Path: String;
begin
  Path:= 'C:\Program Files\Borland\';
  Path:= ExtractFileName(ExcludeTrailingPathDelimiter(Path));
end;

結果はPathにBorlandという文字列が入ることになる。

トップに戻る

関連ページ