ホーム >プログラム >Delphi 6 ローテクTips

Unicode対応ExtractFileName

Unicode対応ExtractFileName。

interface

function ExtractFileNameW(sFile: WideString): WideString;


implementation

function ExtractFileNameW(sFile: WideString): WideString;
{
パスを除いたファイル名を返す。
拡張子はつく。
'\' はつかない。
}

var
  i, li_Len, li_Pos: Integer;
begin
  Result := '';
  if (sFile <> '') then begin
    li_Len := Length(sFile);
    li_Pos := li_Len + 1;  //sFileの最後が'\'であった場合への対策
    for i := li_Len downto 1 do begin
      if (sFile[i] = '\') or (sFile[i] = ':') then begin
        Break;
      end;
      li_Pos := i;
    end;
    Result := Copy(sFile, li_Pos, MaxInt);
  end;
end;

sFileのファイル名部分を返す。
拡張子はつく。
ファイル名の先頭に '\' はつかない。