2011年11月24日木曜日

( Java ) 絶対パスからディレクトリパスのみを取り出す

今日は本当に疲れた。
仕事ではムカつくことばかりだったし...。
現実で「俺を誰だと思ってるんだっ!」なんて初めて聞いたよ。
とりあえず怒鳴るなっての。すんげー偉い人間だっていうなら権力使ってサッサと俺をクビにすればいいだろ?めんどくせぇ。怒鳴ろうがあんたへの信頼はなおらねぇっての! ...

はい。さて、今日はJavaで、C#のようにパスからディレクトリパスのみを取り出す関数が用意されていないようなのでそれをメモしておく。

private String getDirectoryName(String absolutepath)
{
    File file = new File(absolutepath);
    int index = file.getAbsolutePath().lastIndexOf("\\");
    String dirName = "";
    if(index > 0 && index <= file.getAbsolutePath().length() - 1)
    {
        dirName = file.getAbsolutePath().substring(0, index);
    }
    return dirName;
}

この関数を正常に使用するためには引数となる絶対パスをあらかじめチェックするか、
あるいはこの関数内でチェックする必要がある。