ブックマーク / uyota.asablo.jp (1)

  • File.getCanonicalPath() と File.getAbsolutePath() の違い: uyota 匠の一手

    javadoc でこの二つの説明を読むと、とても回りくどく書かれている。「この抽象パス名の正規のパス名文字列を返します。」とあっても良く判らない。 そこで、もっと詳しい説明を見る事になる。「正規のパス名は、一意の絶対パスです。正規のパス名の正確な定義は、システムに依存します。」どうも、一意かどうかが、getCanonicalPath と getAbsolutePath の大きな違いらしい。しかも、システム依存とくるから不安に拍車がかかる。 さらに読み進めると「パス名から "." や ".." などの冗長名を削除し、シンボリックリンクを解決し (UNIX プラットフォームの場合)、ドライブ名の大文字小文字を適切に変換し (Microsoft Windows プラットフォームの場合) ます。」とある。この文章がいつも混乱の元になる。絶対パス名なのに、なぜ、"." や ".." などを削除するの

    dekatotoro
    dekatotoro 2011/04/13
    File.getCanonicalPath() と File.getAbsolutePath() の違い: uyota 匠の一手
  • 1