2016-10-10 3 views
-1

다음을 수행하는 함수를 작성하고 싶습니다. 잠재적 인 "../"및 "./"로 채워진 임의의 문자열을 중간에 가리키고 바꾸려면 점과 여분의 슬래시가 제거 된 절대 파일 이름 예 :Java/Android 응용 프로그램에서 디렉토리 작업

private String validDirectory(String baseDirectory, String addOn) { 

    if (baseDirectory + addOn ISN'T A VALID DIRECTORY) { 
     Toast(error); 
     return baseDirectory; 
    } 
    else { 
     // ex: /data/data/org.hacktivity.datatemple/../org.hacktivity.datatemple/ => /data/data/org.hacktivity.datatemple 
     return TRIMMED VERSION OF baseDirectory + addOn; 
    } 

} 

답변

2

/data/data/org.hacktivity.datatemple/../../data/./org.hacktivity.datatemple/ 당신은 File 개체의 canonicalPath 찾고있다. getCaconicalPath() 또는 getCanonocalFile()을 사용하여 상대 경로 요소를 제거하십시오.

관련 문제