2017-02-05 7 views
0

경로의 모든 디렉토리를 가져 오려고합니다. 예를 들어, a/b/c/d.e에서 a, a/ba/b/c을 받고 싶습니다. 나는 posix dirname과 같은 함수를 여러 번 호출함으로써 이것을 달성 할 수있다. 문제는 경로가 a/b/c/ 인 경우입니다. a, a/ba/b/c을 받고 싶습니다. 다음에 c이 있으므로 c은 내가 기재하고 싶은 디렉토리 여야합니다. 하지만 을 입력하면 과 같은 함수는 a/b/c 대신 a/b을 반환합니다.'/'에 경로를 분할하여 구문 분석하는 것이 안전합니까?

디렉토리 목록을 얻으려면 /으로 분할 할 수 있습니까? 그렇지 않은 경우가 있습니다. 내가 아는

답변

1

유일한 특별한 경우 또는 마지막에하지 될 수 있습니다 마지막이라는 폴더 이름 a.e와 말

  • 에서 / (와
  • 에서 파일 이름으로

    1. 입니다) \를 사용하지만 난 그게) 귀하의 경우에는 적용되지 않는다 생각한다
    2. 심볼릭 링크
    3. Windows 경로 (
    4. 사용자 입력 오류, 복수 입력 /. 예 : 일부 프로그램에서 지원되는 /tmp//something

    위의 모든 경우를 지원하는 함수라면 괜찮다고 생각합니다.