카테고리 : 개발
2010/07/25 cocoa에서 숫자 3자리마다 컴마 찍는 방법
2010/03/01 Cocos2D에서 통짜 Sprite화일 쉽게 사용하는 법 [3]
+(void)saveToFile:(NSString*)filename object:(id)root
{
NSString *path = [self getPath:filename];
// root 부터 줄줄이 하위객체를 다 돌면서 path화일에 저장하게 됩니다.
BOOL saved=[NSKeyedArchiver archiveRootObject:root toFile:path];
if (saved){
NSLog(@"saved");
} else {
NSLog(@"not saved");
};
}
+(id)loadFromFile:(NSString*)filename
{
NSString *path = [self getPath:filename];
// path화일을 읽어서 적절한 객체를 생성해서 넘겨줍니다.
id obj = [NSKeyedUnarchiver unarchiveObjectWithFile:path];
return obj;
}
@interface MyObject : NSObject<NSCoding> {
....
int score;
MySubObject* subObj;
int intArray[INT_ARRAY_MAX];
}
...
@end
@implementation MyObject
- (id) initWithCoder: (NSCoder *)coder
{
if ((self = [super init]))
{
score = [coder decodeIntForKey:@"score"];
self.subObj = [coder decodeObjectForKey:@"subObj"];
[coder decodeArrayOfObjCType:@encode(int) count:INT_ARRAY_MAX at:(void *)intArray];
}
}
- (void) encodeWithCoder: (NSCoder *)coder
{
[coder encodeInt:score forKey:@"score"];
[coder encodeObject:subObj forKey:@"subObj"]; // MySubObject도 NSCoding구현 필수!
[coder encodeArrayOfObjCType:@encode(int) count:INT_ARRAY_MAX at:(const void*)intArray];
}
@end
# by | 2010/08/25 22:15 | 개발 | 트랙백 | 덧글(0)
// formatter를 미리 만들어 놓고.. 재사용 ㄱㄱ~
NSNumberFormatter *frmtr = [[NSNumberFormatter alloc] init];
[frmtr setGroupingSize:3];
[frmtr setGroupingSeparator:@","];
[frmtr setUsesGroupingSeparator:YES];
// 실제로 숫자 --> 컴마 문자열로 변환할 때
int number = 10000000;
NSString* commaString = [frmtr stringFromNumber:[NSNumber numberWithInt:number]];
// commaString == @"10,000,000";
출처 : http://www.tech-recipes.com/rx/5460/cocoa-convert-number-to-comma-separated-nsstring/
# by | 2010/07/25 20:48 | 개발 | 트랙백 | 덧글(0)

# by | 2010/03/01 00:05 | 개발 | 트랙백 | 덧글(3)
◀ 이전 페이지 다음 페이지 ▶