2014-01-21 2 views
2

메신저 작은 프로젝트를 작성하는 그 파일이나 단축키를 엽니 다. 과정에서 나는 문제를 발견했다.자바 파일 찾기

질문은 간단합니다. 어떻게 btw 파일이나 바로 가기를 바꿀 수 있습니까? 내가 사용하고 검색해야 할 java 명령은 무엇입니까?

if (fileIsShortcut) { 
    return variable1; 
} else { 
    return variable2; 
} 

난 당신이 내 문제를 이해 바랍니다.

+0

그것은 당신이 "바로 가기"가 무슨 뜻인지 달려있다 - 우리가 윈도우 단축키에 대해 얘기 (이 그냥 일반'.lnk' 파일입니다), 맥 파인더 별칭 또는 POSIX 스타일의 심볼릭 링크 ? –

+0

Windows 단축키 – Macas

+0

Java의 경우 Windows 단축키는 이름이'.lnk'로 끝나는 보통 파일이므로, 특정 파일이 바로 가기인지 여부에 신경 쓰면 이름을 확인하십시오. 바로 가기가 _to_을 가리키는 것을 해결해야한다면, 순수 Java 방식을 인식하지 못합니다. [이 질문에] (http://stackoverflow.com/q/3995097/592139) 도움이 될 몇 가지 기본 브리지 라이브러리에 대해 설명합니다. –

답변

0

사용이 코드

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()); 
} 
+0

어쨌든 .lnk를 찾을 수 없습니다. 이 부울은 false를 반환합니다. – Macas

+0

편집 된 답변보기 – Dima

+0

this.test = new File ("testSh.exe - Shortcut"); isSh = isSymlink (this.test); 여전히 false를 반환합니다. – Macas