第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

Java 1.6 - 確定符號(hào)鏈接

Java 1.6 - 確定符號(hào)鏈接

函數(shù)式編程 2019-08-02 16:29:31
Java 1.6 - 確定符號(hào)鏈接在DirectoryWalker類(lèi)中,我想知道File實(shí)例是否實(shí)際上是指向目錄的符號(hào)鏈接(假設(shè),walker在UNIX系統(tǒng)上行走)。鑒于,我已經(jīng)知道實(shí)例是一個(gè)目錄,以下是確定符號(hào)鏈接的可靠條件嗎?File file;// ...      if (file.getAbsolutePath().equals(file.getCanonicalPath())) {    // real directory ---> do normal stuff      }else {    // possible symbolic link ---> do link stuff}
查看完整描述

3 回答

?
慕的地6264312

TA貢獻(xiàn)1817條經(jīng)驗(yàn) 獲得超6個(gè)贊

Apache Commons中使用的技術(shù)使用父目錄的規(guī)范路徑,而不是文件本身。我不認(rèn)為您可以保證不匹配是由于符號(hào)鏈接,但它是一個(gè)很好的跡象表明該文件需要特殊處理。

這是Apache代碼(受其許可),為了緊湊而進(jìn)行了修改。

public static boolean isSymlink(File file) throws IOException {
  if (file == null)
    throw new NullPointerException("File must not be null");
  File canon;
  if (file.getParent() == null) {
    canon = file;
  } else {
    File canonDir = file.getParentFile().getCanonicalFile();
    canon = new File(canonDir, file.getName());
  }
  return !canon.getCanonicalFile().equals(canon.getAbsoluteFile());}


查看完整回答
反對(duì) 回復(fù) 2019-08-02
?
繁星淼淼

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超11個(gè)贊

Java 1.6不提供對(duì)文件系統(tǒng)的低級(jí)訪(fǎng)問(wèn)。看起來(lái)應(yīng)該包含在Java 1.7中的NIO 2將支持符號(hào)鏈接。可以使用新API的草稿。這里提到了符號(hào)鏈接,可以創(chuàng)建跟蹤它們。我不確定應(yīng)該使用哪種方法來(lái)確定文件是否是符號(hào)鏈接。有一個(gè)用于討論NIO 2 的郵件列表 - 也許他們會(huì)知道。


查看完整回答
反對(duì) 回復(fù) 2019-08-02
?
飲歌長(zhǎng)嘯

TA貢獻(xiàn)1951條經(jīng)驗(yàn) 獲得超3個(gè)贊

另外,請(qǐng)注意file.isFile()file.isDirectory()根據(jù)已解析的文件返回結(jié)果,因此兩者都返回false時(shí)file指的是目標(biāo)不存在的符號(hào)鏈接。

(我知道這本身并不是一個(gè)有用的答案,但它讓我絆倒了幾次,所以我認(rèn)為我應(yīng)該分享)


查看完整回答
反對(duì) 回復(fù) 2019-08-02
  • 3 回答
  • 0 關(guān)注
  • 545 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)