File file = new File("path to file alias foo");
"ファイルエイリアスfooへのパス"は、エイリアスが実際のファイルサイズではなく0になるというレポートのサイズです。私は別名をテストするための回避策を見つけました:JavaはMac OSX上でサイズ0のエイリアス(シンボリックリンク)を報告します。本当のファイルサイズはどのように取得するのですか?
public boolean isLink() {
try {
if (file.getAbsolutePath().equals(file.getCanonicalPath())) {
return false;
}
} catch (IOException ex) {
logger.severe(ex.getMessage());
}
return true;
}
EDIT実はこのコードは以下のポスターで指摘したように、動作しません。私はLinuxのシンボリックリンクの例から解決策を試みていましたが、私はファインダのエイリアスとシンボリックリンクが同じではないことに気付きませんでした。
NOT!これが動作しているようですが、....
file.getCanonicalFile().length();
はまだ誰もが正しい方向に私を指す0にファイルの長さを報告しますか?
私は、これはfile.getCanonicalFile(同じだろうと考えている)。長さ それはまだ0 –