NSString과 함께 printf를 사용하는 방법
NSLog
타임 스탬프와 개행 문자없이 같은 것을 사용해야 하므로 printf
. 이것을 어떻게 사용할 수 NSString
있습니까?
당신은 변환 할 수 있습니다 NSString
으로 UTF8
호출하여 문자열 UTF8String
방법 :
printf("%s", [string UTF8String]);
//public method that accepts a string argument
- (void) sayThis : ( NSString* ) this
{
printf("%s",[this cString]);
}
NSString.h (html 버전)에 따르면 UTF8String 메서드는 Mac OSX에서만 사용할 수 있습니다.
(아래 참조) 내가 본 다른 모든 방법은 'availability : Openstep'으로 표시됩니다.
일반 char * 문자열을 반환하는 추가 메서드가 있지만 문자 변환 예외가 발생할 수 있습니다.
참고 문자열 포인터는 사라질 수있는 메모리를 가리 키므로 문자열 내용의 복사본을 유지하려면 문자열을 복사해야하지만 즉시 인쇄해도 괜찮습니까?
인코딩 된 문자열을 반환하는 메서드와 원하는 인코딩이 작동하는지 테스트하는 메서드도 있습니다 (내 생각에). 필요한 인코딩이 작동하는지 확인한 다음 필요에 따라 인코딩 된 문자열을 요청할 수 있습니다.
.h 파일 자체를 읽는 것부터 인코딩 사이에 많은 인코딩과 변환이 있습니다. 이들은 열거를 사용하여 관리되므로 원하는 인코딩 유형을 인수로 전달할 수 있습니다.
Linux 등에서는 다음을 수행하십시오.
NSString.h를 찾습니다 ** 이것은 또한 html doc 파일을 발견했습니다
그렇지 않으면 다음을 수행하십시오.
/ usr -name NSString.h 찾기
참고 귀하의 마일리지는 다를 수 있습니다. :)
감사.
NSString.h html 문서 파일에서 :
cString-(const char *) cString; 가용성 : OpenStep
기본 인코딩에서 8 비트 문자의 널로 끝나는 문자열에 대한 포인터를 리턴합니다. 가리키는 메모리는 호출자가 소유하지 않으므로 호출자는 해당 내용을 복사하여 보관해야합니다. 변환 중에 정보 손실이 발생하면 NSCharacterConversionException을 발생시킵니다. (-canBeConvertedToEncoding :을 참조하십시오.)
cStringLength-(NSUInteger) cStringLength; 가용성 : OpenStep
기본 C 문자열 인코딩을 사용하여 바이트로 변환 된이 유니 코드 문자열 버전의 길이를 반환합니다. 변환으로 인해 정보 손실이 발생하면 결과를 예측할 수 없습니다. -canBeConvertedToEncoding : 먼저 확인하십시오.
cStringUsingEncoding :-(const char *) cStringUsingEncoding : (NSStringEncoding) encoding; 가용성 : MacOS-X 10.4.0, Base 1.2.0
지정된 인코딩에서 null로 끝나는 문자열에 대한 포인터를 반환합니다. NB. GNUstep에서 이것을 사용하여 nul로 끝나는 utf-16 문자열 (16 비트 문자)과 8 비트 문자열을 얻을 수 있습니다. 가리키는 메모리는 호출자가 소유하지 않으므로 호출자는 해당 내용을 복사하여 보관해야합니다. 변환 중에 정보 손실이 발생하면 NSCharacterConversionException을 발생시킵니다.
canBeConvertedToEncoding :-(BOOL) canBeConvertedToEncoding : (NSStringEncoding) encoding; 가용성 : OpenStep
이 문자열을 정보 손실없이 지정된 문자열 인코딩으로 변환 할 수 있는지 여부를 반환합니다.
참고 URL : https://stackoverflow.com/questions/3796106/how-to-use-printf-with-nsstring
'development' 카테고리의 다른 글
파이썬에 중첩 될 수있는 정적 블록의 수에 제한이있는 이유는 무엇입니까? (0) | 2020.12.08 |
---|---|
R 스크립트의 경로 얻기 (0) | 2020.12.08 |
요청 라이브러리를 사용하는 Python 앱 단위 테스트 (0) | 2020.12.08 |
Heroku에서 PostgreSQL의 내장 전체 텍스트 검색을 사용하지 않는 이유는 무엇입니까? (0) | 2020.12.08 |
Razor / JavaScript 및 후행 세미콜론 (0) | 2020.12.08 |