2009-04-13 3 views
2

iPhone 개발을위한 파일 시스템 경로를 이스케이프 처리하기위한 시스템 라이브러리가 있습니까? 필자는 실제로 쓰는 경로가 안전하고 안전한지 확인하기 위해 파일 이름이 타사 값을 기반으로하는 파일을 읽고 써야합니다.iPhone의 파일 시스템 경로를 어떻게 벗어나니까?

모든 개발자가 재 작성해서는 안되는 "단순한"유형의 함수이기 때문에 나에게이 작업을 수행 할 NS 라이브러리가 있다고 생각했지만, .

감사합니다.

편집 : 감사는 응답을, stringByStandardizingPath는 : 문자열의 실제 파일 경로를 얻기를위한 좋아 보인다, 그러나 나는 다음과 같은 것을 할 것입니다 무엇을 찾고 있어요 : 기본적으로

in: @"~/Foo/Bar" 
out: @"__Foo_Bar" or @"FooBar" etc. 

는 것을 안전하지 않은 문자를 파일 경로 구성 요소에서 제거하십시오.

연구를 계속 한 후에 파일 경로에 '/'이외의 거의 모든 유니 코드 문자가 허용 된 것처럼 보입니다. 그러나 파일 경로는 대개 깨지기 쉽기 때문에 이스케이프 시퀀스 등으로 조작 할 수 있습니다. Apple의 큰 두뇌가 안전하지 않은 값의 파일 경로 구성 요소를 제거하는 API를 원하기를 바랍니다.

답변

1

당신이 시도 할 수있는 NSString의 - (NSString *)stringByStandardizingPath

+1

/../ 및 /./와 같은 항목을 제거하므로 이스케이프 처리와 아무 관련이 없습니다. – Dustin

0
나는 화이트리스트와 어쩌면 [a-zA-Z0-9_. ], 아니면 뭔가 좀 더 복잡한 이동, 단순히 20 % '에 어떻게 URL의 인코딩 공간과 비슷한 진수로 어떤 다른 사람을 인코딩 말할 것

'

관련 문제