У меня есть NSString «dateString», который содержит дату и время в данном формате.Как получить дату и время из форматированной строки в iOS
"MM/dd/yyyy HH:mm:ss a"
.
Я хочу получить данные из dateString с помощью NSDateFormatter
, а затем я пытаюсь показать в строке "strDate"
. Я могу получить данные, но единственная проблема заключается в том, что я не получаю правильное значение для "hour"
.
Для Ex:
dateString = 1/23/2015 7:06:37 AM
strDate = 01/23/2015 00:06:37 am
Как решить эту проблему. Заранее спасибо. Это мой код:
-(NSString *)getDateQuestion:(NSString *)dateString
{
NSLog(@"dateString = %@",dateString);
//NSString to NSDate
NSDate *datefromString = [[NSDate alloc] init];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"GMT+5:30"]];
[dateFormatter setTimeZone: [NSTimeZone systemTimeZone]];
[dateFormatter setDateFormat:@"MM/dd/yyyy HH:mm:ss a"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
datefromString = [dateFormatter dateFromString:dateString];
NSLog(@"dateString1 = %@",datefromString);
//NSDate convert to NSString
[dateFormatter setDateFormat:@"MM/dd/yyyy HH:mm:ss a"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"GMT+5:30"]];
[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
NSString *strDate = [dateFormatter stringFromDate:datefromString];
NSLog(@"strDate = %@",strDate);
return strDate;
}
При печати даты, вы установить часовой пояс? NSDate не имеет информации о часовом поясе. – HAS
Да. Я использую часовой пояс «GMT». Можете ли вы предложить, какой часовой пояс для Индии. как я использую +5: 30 для Индии. – adi012
Можете ли вы опубликовать код, который вы используете для преобразования строки на дату и даты в строку? – HAS