Weblog

Delphi小ネタ

Posted at 2002-12-30T02:00:00+09:00 in Coding

日記書くネタが無いので。ロングファイルネームをショートファイルネームにするのは、ExtractShortPathName()で一発なんですが、逆が無かったりする。で、書くわけさ。

function ExtractLongPathName(FileName: TFileName): String;
var
  sr : TSearchRec;
begin
  Result := '';
  FileName := ExpandFileName(FileName);
  while LastDelimiter('\', FileName) >= 3 do
  begin
    if FindFirst(FileName, faAnyFile, sr) = 0 then
    begin
      try
        Result := '\' + sr.Name + Result;
      finally
        FindClose(sr);
      end;
    end
    else
    begin
      Result := '\' + ExtractFileName(FileName) + Result;
    end;
    FileName := ExtractFilePath(FileName);
    SetLength(FileName, Length(FileName) - 1);
  end;
  Result := FileName + Result;
end;

実は、あんまり使い道ないんですが、ショートファイルネームかロングファイルネームのどちらが取得されるかわからない場合、とりあえずこの関数に通せば、ロングファイルネームで考えられる・・・と。どんな場合やねん。

友人曰く、僕のDelphiのコードは、「begin~end書きすぎ」だそうだ。なんとなく、挟んでないと落ち着かないんだよ。

Recent entries from same category

同じカテゴリに分類された最近10件のエントリです。

  1. JSONフィードとか何とか #2
  2. 設定を外部JavaScriptファイルから読み込む
  3. del.icio.usのnetworkをツリー状に展開しまくる
  4. XPIパッケージにまとめるバッチ・スクリプト
  5. Yahoo! Search Web ServicesのJSON(P)を利用したサイト内検索
  6. Google AJAX Search APIのJSONPを利用したサイト内検索
  7. JSONPに同期リクエスト
  8. インバウンド・リンクのリスト
  9. はてなブックマークエントリー情報取得APIははてなスクリーンショットAPI(でもある)
  10. prototype.jsの開発メモとGecko DOM ReferenceのHTMLヘルプ

Comments

JavaScriptに対応または有効な環境の場合、ここにはてなブックマークでのこのエントリに対するコメントが表示されます。

Weblog archives

by Category

This page was last modified on 2003-11-18T19:31:45+09:00 (in 0.605 secs).