반응형
objective-c에서 NSURL의 일부 가져 오기
NSString 값이
http://digg.com/news/business/24hr
3 단계 이전에 모든 것을 어떻게 구할 수 있습니까?
http://digg.com/news/
이것은 정확히 세 번째 수준이 아닙니다. URL은 다음과 같이 나뉩니다.
- 프로토콜 또는 체계 (여기서
http
) ://
구분- 사용자 이름과 비밀번호 (여기서는 없지만 비밀번호가있을 수 있음
username:password@hostname
) - 호스트 이름 (여기서
digg.com
) - 포트 (
:80
예 : 도메인 이름 뒤에 올 것 ) - 경로 (여기에서
/news/business/24hr
) - 매개 변수 문자열 (세미콜론 뒤에 오는 것)
- 쿼리 문자열 (와 같은 GET 매개 변수가있는 경우
?foo=bar&baz=frob
) - 조각 (링크와 같은 앵커가있는 경우
#foobar
).
"완전한 기능을 갖춘"URL은 다음과 같습니다.
http://foobar:nicate@example.com:8080/some/path/file.html;params-here?foo=bar#baz
NSURL
다양한 접근자가 있습니다. NSURL
클래스 문서 의 URL 부분 액세스 섹션 에서 확인할 수 있습니다 . 빠른 참조를 위해 :
-[NSURL scheme]
= http-[NSURL resourceSpecifier]
= (// URL 끝까지)-[NSURL user]
= foobar-[NSURL password]
= 네이트-[NSURL host]
= example.com-[NSURL port]
= 8080-[NSURL path]
= /some/path/file.html-[NSURL pathComponents]
= @ [ "/", "some", "path", "file.html"] (처음 /는 그 일부 임)-[NSURL lastPathComponent]
= file.html-[NSURL pathExtension]
= html-[NSURL parameterString]
= params- 여기-[NSURL query]
= foo = bar-[NSURL fragment]
= 바즈
그래도 원하는 것은 다음과 같습니다.
NSURL* url = [NSURL URLWithString:@"http://digg.com/news/business/24hr"];
NSString* reducedUrl = [NSString stringWithFormat:
@"%@://%@/%@",
url.scheme,
url.host,
url.pathComponents[1]];
예제 URL의 경우 프로토콜, 호스트 및 첫 번째 경로 구성 요소입니다. (에 의해 반환 된 배열의 인덱스 0에있는 요소 -[NSString pathComponents]
는 단순히 "/"이므로 인덱스 1에있는 요소를 원할 것입니다. 다른 슬래시는 삭제됩니다.)
운동장은이를 실제로 볼 수있는 대화식 방법을 제공합니다. NSURL을 iOS에서 중요한 주제로 배울 수있는 재미있는 방법으로 즐겁게 즐길 수 있기를 바랍니다.
참고 URL : https://stackoverflow.com/questions/3692947/get-parts-of-a-nsurl-in-objective-c
반응형
'IT박스' 카테고리의 다른 글
UIPageViewController의 스 와이프 동작을 어떻게 비활성화합니까? (0) | 2020.07.24 |
---|---|
SQL DATE에서 월과 연도 만 가져 오기 (0) | 2020.07.24 |
Android 4.3 메뉴 항목 showAsAction =“항상”무시 (0) | 2020.07.24 |
handlerbars.js 목록이 비어 있는지 확인 (0) | 2020.07.24 |
(이미지)보기 알파에 대한 Android 및 설정 알파 (0) | 2020.07.24 |