2010-07-15 5 views
0

가능한 중복 :
How can I make OS X recognize drive letters?OS X에서 드라이브 문자를 인식하도록하려면 어떻게해야합니까?

나는 알고있다. 이교. 하지만 나는 묶여있다. OS X와 ​​Windows 사이의 비 호환성을 만드는 절대 경로 이름을 사용하는 구성 파일이 많이 있습니다. 유효한 절대 파일 이름으로 "Q : /foo/bar/bim.properties"를 인식 할 수있는 OS X (두 가지 중 더 융통성이 있음)를 얻을 수 있다면 개를 절약 할 수 있습니다. 스택 트레이스와 설정 파일을 통한 spelunking 작업.

결국 "성공"을 인쇄하려면이 Java 테스트 코드가 필요합니다. 실행될 때 :

 
import java.io.*; 
class DriveLetterTest { 
    static public void main(String... args) { 
    File f = new File("S:"); 
    if (f.isDirectory()) { 
     System.out.println("SUCCESS!"); 
    } 
    else { 
     System.out.println("FAIL!"); 
    } 
    } 
} 

누구든지이 작업을 수행 할 수 있습니다.

+0

@ 오스카 : 질문에 "belongs-on-stackoverflow"태그를 넣지 마십시오. http://meta.stackexchange.com/questions/10216/can-we-disallow-the-use-of-belongs-on-xxxxxxx-and-not-programming-related-tag – Hello71

+0

Duplicate : http : // stackoverflow. com/questions/3258426/how-can-make-os-x-recognition-drive-letters – brainimus

+1

Windows와 OS X는 근본적으로 다른 디렉토리 레이아웃을 가지고 있습니다. 볼륨 및 경로 포맷 문제는 제쳐두고 Windows 디렉토리는 OS X에서 의미가있는 부분을 가리 킵니까? – Schwern

답변

0

OS별로 설정 파일을 변경하고 싶지 않다면, 무엇을 우선적으로 사용합니까?

모든 설치에는 고유 한 설정 파일 세트가 있어야하며 그에 따라 적절하게 사용해야합니다.

은 그러나 당신이 주장하면 ... 당신은 단지 OS 버전을 감지해야하고 윈도우가 아닌 경우, 문자 무시 : 라인을 따라

뭔가 : 당신은 아이디어를 얻을

boolean isWindows = System.getProperty("os.name") 
        .toLowerCase().contains("windows"); 

String folder = "S:"; 
if(isWindows && folder.matches("\\w:") { 
    folder = "/"; 
} else if(isWindows && folder.matches("\\w:.+)) { 
    folder = folder.substring(2);// ignoring the first two letters S: 
} 

+0

더 잘 할 수있는 Java 파일 경로 클래스가 있습니까? – Schwern

관련 문제