代码之家  ›  专栏  ›  技术社区  ›  Rahul Vyas

iphone sdk:如何将阿拉伯语日期格式转换为英语?

  •  6
  • Rahul Vyas  · 技术社区  · 16 年前

    4 回复  |  直到 5 年前
        1
  •  11
  •   Andrew Grant    16 年前

    一般来说,最好以不可知类型保存日期,并且仅在必须显示日期时对其进行格式化。一种常见的格式是存储自1970年以来的秒数或您选择的其他日期。

    例如,以下代码将为本地用户显示格式正确的当前时间。

    NSDate* now = [NSDate dateWithTimeIntervalSinceNow:0];
    NSDateFormatter* formatter = [[NSDateFormatter alloc] init];
    [formatter setLocale:[NSLocale currentLocale]];
    NSString* localDateString = [formatter stringFromDate];
    [formatter release];
    

    但是,当您确实具有特定于区域设置的格式的日期时,可以再次使用formatter类对其进行转换。例如。

    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];
    

        2
  •  6
  •   Rahul Vyas    16 年前

    我在这里找到的我就是这样做的

    NSDate *CurrentDate = [NSDate date];
    NSDateFormatter *Formatter=[[NSDateFormatter alloc] init];
    NSLocale *indianLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
    [Formatter setLocale:indianLocale];
    [Formatter setDateFormat:@"dd/MM/yyyy"];
    NSString *FormattedDate=[Formatter stringFromDate:CurrentDate];
    [indianLocale release];
    [Formatter release];
    
        3
  •  2
  •   zapping    16 年前

    试试这个

    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:@"EST"];
    [dateFormatter setTimeZone:timeZone];
    [dateFormatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"];
    NSString *dateString = [dateFormatter stringFromDate:localDate];
    
        4
  •  1
  •   Musa almatri    9 年前

    敏捷的

    dateFormatter.locale = NSLocale(localeIdentifier: "en_US") as Locale!
    dateFormatter.dateFormat = "dd/MM/yyyy"
    let resultsDate = dateFormatter.string(from: date)
    
    推荐文章