(회전) 중국어 파일 이름이 샌드박스에서 파일 이름이 뒤바뀌는 문제를 해결하다
iOS가 네트워크 프로그래밍을 할 때 서버와 httpurl의 상호작용이 필요합니다. 만약에 url에 한자가 존재하거나 그림을 업로드해야 한다면 urlEncode를 고려해야 합니다. (그렇지 않으면 웹 주소가 잘못될 수 있습니다.) 서버가 되돌아오는 일부 정보도 같은 문제가 있을 수 있습니다. 이때 서버는 urlEcode를 되돌릴 수 있고 클라이언트는 urlDecode를 디코딩해야 합니다.
사실 방법은 매우 간단하다. 아래와 같은 두 가지 방법만 만들면 된다
인코딩 URLEncodedString [objc]view plain copy - (NSString*) URLEncodedString: (NSString*)str {NSString*encodedString=(NSString)CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)str, NULL, (CFStringRef)@ "!();:@&=$,/%#[],kCFStringRef); gEncodingUTF8),
return encodedString;
}
URLDecodedString [objc]view plain copy - (NSString*) URLDecodedString: (NSString*)str {NSString*decodedString=(_bridge_transfer NSString*) CFURLCreateStringByReplacingPercentEscapesUsingEncoding(NULL, (_bridge CFStringRef)str, CFSTR("), CFStringConvertNSStringEncodingToEncoding(NSUTF8) StringEncoding);
return decodedString;
}
호출 방법:
[objc] view plain copy NSString *readyEcodeStr=@"adsfa asdfa s+asdf";//urlecode의 문자열 NSString*ecodeStr=[self URLEncodedString:ready EcodeStr]를 준비합니다.NSLog(@"readyEcodeStr=%@ ecodeStr=%@",readyEcodeStr,ecodeStr);
인쇄된 로그는 다음과 같습니다:readyEcodeStr=adsfa asdfa s+asdf ecodeStr=adsfa%20asdfa%20s%2Basdf
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.