Cha*_*dni 4 objective-c nsdateformatter ios
我的申请有两种语言,一种是英语,另一种是西班牙语。现在我从服务器收到时间戳,我需要以“MMM dd,yyyy”格式显示日期。这给了我“2017 年 12 月 23 日”,但是当我将其转换为西班牙语时,我需要用西班牙语显示月份名称。您能否建议我将 12 个月的西班牙语名称指定为缩写形式,或者 NSDateFormatter 有这种类型的选项。
NSDate *date = [dateFormatter dateFromString:[[[webserviceDict valueForKey:@"CurrentWeekEarning"]objectAtIndex:i-1]valueForKey:@"date"]];
[dateFormatter setDateFormat:@"MMM dd, yyyy"];
strTitle = [NSString stringWithFormat:@"%@",[dateFormatter stringFromDate:date]];
Run Code Online (Sandbox Code Playgroud)
只需设置区域设置并从模板创建格式(以设置正确的顺序):
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.locale = [NSLocale localeWithLocaleIdentifier:@"es"];
[formatter setLocalizedDateFormatFromTemplate:@"yyyyMMMdd"];
NSString *localizedDate = [formatter stringFromDate:[NSDate date]];
NSLog(@"Localized date: %@", localizedDate); // 26 dic 2017
Run Code Online (Sandbox Code Playgroud)
无需手动添加逗号或其他分隔符。它们也依赖于语言。
使用预定义格式可以实现相同的效果:
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.locale = [NSLocale localeWithLocaleIdentifier:@"es"];
formatter.timeStyle = NSDateFormatterNoStyle;
formatter.dateStyle = NSDateFormatterMediumStyle;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2320 次 |
| 最近记录: |