日期形成问题

时间:2017-07-03 08:29:21

标签: ios objective-c

我需要你的帮助 -

在我的项目中,我使用两种语言英语和阿拉伯语,当我将设备语言设置为阿拉伯语时,日期格式化程序将日期转换为我的应用程序内的阿拉伯语格式,但我希望日期在两个版本中均为英语语言设置为英语或阿拉伯语,我希望日期为英语格式。任何帮助将不胜感激。提前谢谢..

3 个答案:

答案 0 :(得分:0)

您必须明确设置dateformatters区域设置:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.locale = [NSLocale localeWithLocaleIdentifier:@"en"];

答案 1 :(得分:0)

尝试设置NSLocale,如下所示

NSDateFormatter * dateFormatter=[[NSDateFormatter alloc]init];
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
    NSLocale *usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
    [dateFormatter setLocale:usLocale];
    NSDate* currentDate=[NSDate date];
    NSString * formattedDate=[dateFormatter stringFromDate:currentDate];

答案 2 :(得分:0)

试试这个:

-(NSString *)formattedString:(NSString *)num{
    NSNumberFormatter *formatter = [NSNumberFormatter new];
    formatter.locale = [NSLocale localeWithLocaleIdentifier:@"ar"]; // you can change here your local
     ///do your fromat here

    NSNumberFormatter *formatter2 = [NSNumberFormatter new];
    formatter.locale = [NSLocale localeWithLocaleIdentifier:@"en"];
    NSNumber *number2 = [formatter2 numberFromString:num];

    return [formatter stringFromNumber:number2];

}