В общем случае лучше хранить даты в агностическом типе и форматировать их только тогда, когда они должны отображаться. Распространенным форматом является сохранение количества секунд с 1970 года или другой выбранной вами даты.
например. следующий код будет отображать текущее время, правильно отформатированное для локальных пользователей.
NSDate* now = [NSDate dateWithTimeIntervalSinceNow:0];
NSDateFormatter* formatter = [[NSDateFormatter alloc] init];
[formatter setLocale:[NSLocale currentLocale]];
NSString* localDateString = [formatter stringFromDate];
[formatter release];
Однако, если у вас есть дата в формате, специфичном для локали, вы можете снова использовать класс форматера для ее преобразования. Э.Г.
NSString* localDate = @"09/02/2010"; // assume this is your string
NSDateFormatter* formatter = [[NSDateFormatter alloc] init];
[formatter setLocale:[NSLocale currentLocale]];
NSDate* date = [formatter dateFromString: localDate];
[formatter release];
Для работы с любым типом данных, относящихся к локали (даты, валюта, измерения), классы форматирования - ваш друг.