본문 바로가기

iPhone

NSString 자주 쓰는 함수

NSDate를 NSString으로 Iphone

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];

[formatter setDateFormat:@"yyyy MM dd hh:mm:ss"];

NSString *strDate = [formatter stringFromDate:[NSDate date]];

NSLog(@"%@", strDate);

//----------------------------------------------------------

NSString* aStr = [[NSString alloc] initWithData:aData encoding:NSUTF8StringEncoding];

NSData* aData = [aStr dataUsingEncoding: NSUTF8StringEncoding];

// 문자열 생성하기 

NSString *str1 = [NSString new];


//일반적인 문자열 대입 - 문자열 상수
str1 = @"TESTSTR";

//포멧 문자열(stringWithFormat) - 변수 대입방식
NSString *str2 = [NSString stringWithFormat:@"Hi, %@",str1];


//포멧 문자열(stringWithFormat) - 숫자 대입방식
NSString *str3 = [NSString stringWithFormat:@"Integer, %d",123456];


//포멧 문자열(stringWithFormat) - 문자열 대입방식
NSString *str4 = [NSString stringWithFormat:@"stringWithFormat, %s","TESTSTR"];


//Object-C형식 문자열
NSString *str5 = [NSString stringWithString:@"TESTSTR"];  


//C형식 문자열
NSString *str6 = [NSString stringWithCString:"TESTSTR"];


//문자열 Append (추가)
NSString *str7 = [str6 stringByAppendingString:@": TESTSTR"];


//문자열 길이 구하기
int len = [str7 length];


//String형을 int형으로 형변환하기
int vInt = [@"1234" intValue];


//String형을 float형으로 형변환하기
float vFloat = [@"1234.56" floatValue];


//메모리 할당한 문자열 변수 제거
[str1 release]; 

//---

메서드명 : - (NSArray *)componentsSeparatedByString:(NSString *) separator
기능 : separator 구분자로 하여 분리된 배열을 반환함
선언된 클래스 : NSString

메서드명 : + (NSArray *)knownTimeZoneNames:
기능 : 시스템이 알고있는 모든 time zone의 ID를 문자열 배열로 반환함
선언된 클래스 : NSTimeZone

메서드명 : + (id)timeZoneWithName:(NSString *)aTimeZoneNZme
기능 : 인자로 넘어온 ID와 일치하는 time zone 객체를 반환
선언된 클래스 : NSTimeZone

메서드명 : - (id)initWithKey:(NSString *)keyPath ascending:(BOOL)ascending
기능 : 인자로 넘어온 key path를 정렬기준으로 역시 인자로 넘어온 정렬 순서를 적용하고
기본 비교 selector를 통해 초기화된 NSSortDescriptor 객체를 반환한다.
ascending인자가 YES이면 오름차순 NO이면 내림차순 정렬한다.
선언된 클래스 : NSSortDescriptor

메서드명 : - (id)initWithObject:(const id *)object count:(NSUInteger)count
기능 : 인자로 넘어온 C array로부터 count 갯수만큼의 객체를 뽑아 포함시키는 새로운 배열을 할당함
언된 클래스 : NSArray 클래스

메서드명 : -(void)sortUsingDescriptor:(NSArray *)sortDescriptors
기능 : 인자로 넘어온 NSSortDescriptor 객체의 배열을 사용하여 배열을 정렬함.
선언된 클래스 : NSMutableArray
 

NSString* aStr = [[NSString alloc] initWithData:aData encoding:NSUTF8StringEncoding];

NSData* aData = [aStr dataUsingEncoding: NSUTF8StringEncoding];



NSCharacterSet * set = [NSCharacterSet characterSetWithCharactersInString:@"-"];

NSString * test = @"2009-11-24";

NSLog(@"stringByTrimmingCharactersInSet:%@", [test stringByTrimmingCharactersInSet:set]);


NSLog(@"stringByPaddingToLength:%@", [test stringByPaddingToLength:4 withString:nil startingAtIndex:0]);// vb left(test, 4)



NSLog(@"rangeOfString location:%d", [test rangeOfString:@"-"].location); // vb instr

NSLog(@"rangeOfString length:%d", [test rangeOfString:@"-"].length);

메소드 함수를 이용하면 문자열 내에 부분 문자열의 위치를 확인할 있습니다.

문자열이 존재하지 않으면 .length  값은 0 입니다.


NSLog(@"substringToIndex:%@", [test substringToIndex:4]);

왼쪽 4

NSLog(@"substringWithRange:%@", [test substringWithRange:NSMakeRange(5,2)]);

6번째(인덱스5)부터 2

NSLog(@"substringFromIndex:%@", [test substringFromIndex:8]);

9번째(인덱스8)부터 끝까지

'iPhone' 카테고리의 다른 글

custom keyboard  (0) 2011.08.24
개발자료 정리  (0) 2011.08.24
UIImageView URL로 로드하기  (0) 2011.08.22
어디서든 키보드 감추기  (0) 2011.08.22
하위뷰에서 상위뷰 컨트롤 하는 방법  (0) 2011.08.22