Как я могу преобразовать системную миллисекунду в дату в target-c - PullRequest
6 голосов
/ 10 января 2012

Я получаю дату из веб-службы, например / Дата (1326067200000) /, как я могу преобразовать ее в дату, например, ДД.ММ.ГГГГ?

Ответы [ 4 ]

16 голосов
/ 10 января 2012

Вы можете использовать

    NSString *actDate = @"/Date(1326067200000)/";
    NSString *nDate = [[[[actDate componentsSeparatedByString:@"("] objectAtIndex:1] componentsSeparatedByString:@")"] objectAtIndex:0];
    NSDate *date = [NSDate dateWithTimeIntervalSince1970:([nDate doubleValue] / 1000)];

В date вы получите актуальную дату.Далее вы можете отформатировать его в формате «MM / dd / yyyy», используя

    NSDateFormatter *dtfrm = [[NSDateFormatter alloc] init];
    [dtfrm setDateFormat:@"MM/dd/yyyy"];
    nDate = [dtfrm stringFromDate:date];

В nDate вы получите желаемую дату в отформатированном виде.

0 голосов
/ 11 июля 2013
//Use of Function
textFiled.text = [self displayDate:[[NSString stringWithFormat:@"%@",[[[AllKeys valueForKey:@"Date"] componentsSeparatedByString:@"\"]]]]  


// Millisecond to Date conversion
- (NSDate *)displayDate:(double)unixMilliseconds {

    NSDate *date = [NSDate dateWithTimeIntervalSince1970:unixMilliseconds / 1000.];
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

    [dateFormatter setDateStyle:NSDateFormatterShortStyle];
    [dateFormatter setTimeStyle:NSDateFormatterShortStyle];
    [dateFormatter setLocale:[NSLocale currentLocale]];

    NSLog(@"The date is %@", [dateFormatter stringFromDate:date]);
  //  NSDate *returnValue = [dateFormatter stringFromDate:date];
    return date;
}
0 голосов
/ 10 января 2012

Попробуйте это ...

NSDate *date=[[NSDate alloc] initWithTimeIntervalSinceReferenceDate:gettingdate];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc]init];
[dateFormat setDateFormat:@"dd-MM-yyyy HH:mm:SS"];
NSString *newdate = [dateFormat stringFromDate:date];
0 голосов
/ 10 января 2012

Используйте NSDate initWithTimeIntervalSinceReferenceDate: (при условии, что ваше значение использует первый момент 1 января 2001 г., GMT в качестве контрольной даты), чтобы получить экземпляр NSDate, представляющий вашу метку времени.

Чтобы получить форматированное строковое представление, вы можете использовать класс NSDateFormatter .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...