2014-12-07 8 views
-2

У меня есть строка - 13 декабря, 10:00 ISTКак преобразовать дату в строку

Как конвертировать эту строку на сегодняшний день?

Я создал эту дату форматера, но получаю нуль -

NSDateFormatter *userTimeFormatter = [[NSDateFormatter alloc] init]; 
[userTimeFormatter setDateStyle:NSDateFormatterMediumStyle]; 
[userTimeFormatter setTimeStyle:NSDateFormatterShortStyle]; 
userTimeFormatter.doesRelativeDateFormatting = YES; 
[userTimeFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]]; 
+0

Можете ли вы разместить код yo u до сих пор, что преобразует вашу строку с dateFormatter? – Acey

+2

Эта строка недостаточно для создания NSDate, у нее нет года. Откуда взялась эта строка? –

+0

Этот часовой пояс IST, это необходимо или вы можете удалить его из строки и установить время вручную? Это поможет много lol – emotality

ответ

2
NSDateFormatter *userTimeFormatter = [[NSDateFormatter alloc] init]; 
NSString *dateString = @"Dec 13, 10:00 AM IST"; 

NSTimeZone *timeZone = [NSTimeZone timeZoneWithAbbreviation:@"IST"]; 
[userTimeFormatter setTimeZone:timeZone]; 

dateString = [dateString stringByReplacingOccurrencesOfString:@" IST" withString:@""]; 
[userTimeFormatter setDateFormat:@"MMM d, hh:mm a"]; 

NSDate *date = [userTimeFormatter dateFromString:dateString]; 
NSLog(@"india date : %@", date); 

Это даст вам IST TimeZone NSDate, с этого момента вы можете преобразовать в системе часовой пояс с:

[userTimeFormatter setTimeZone:[NSTimeZone systemTimeZone]]; 
NSDate *myDate = [userTimeFormatter dateFromString:dateString]; 
NSLog(@"my date : %@", myDate); 

Выход:

india date : 2000-12-13 04:30:00 +0000 
my date : 2000-12-13 06:00:00 +0000 
+0

Я не знаю, как получить часовой пояс от IST вместо +0530. Поэтому, если вы знаете ответ, отредактируйте ответ. – emotality

+0

Я сомневаюсь, что это даст год как 2000. Я считаю, что это даст текущий год ... –

+1

Это будет после 2000 года, потому что в дате не указан год. Если вы хотите, чтобы текущее время использовало '[NSDate date]' – emotality

Смежные вопросы