IOS:将NSDate转换为NSString将给出零值
我的错在哪里?我有一个使用这种格式的NSDate(数据:14/05/2013 10:52:27),我必须获得一个NSStringIOS:将NSDate转换为NSString将给出零值,ios,nsstring,nsdate,nsdateformatter,Ios,Nsstring,Nsdate,Nsdateformatter,我的错在哪里?我有一个使用这种格式的NSDate(数据:14/05/2013 10:52:27),我必须获得一个NSString NSLog(@"Data: %@",lettureObj.data); NSDateFormatter *outputDateFormatter = [[NSDateFormatter alloc] init]; [outputDateFormatter setDateFormat:@"dd/MM/yyyy HH:mm:ss"]; NSStr
NSLog(@"Data: %@",lettureObj.data);
NSDateFormatter *outputDateFormatter = [[NSDateFormatter alloc] init];
[outputDateFormatter setDateFormat:@"dd/MM/yyyy HH:mm:ss"];
NSString *data = [outputDateFormatter stringFromDate:lettureObj.data];
使用以下功能
//*********************************Convert String into Date **********************
- (NSDate*) convertStringToDate:(NSString*)dateStr dateformat:(NSString*)dateformat
{
// Convert string to date object
//dateformat like :@"yyyy-MM-dd"]
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:dateformat];
NSDate *date = [dateFormatter dateFromString:dateStr];
[dateFormatter release];//For NON-ARC
return date;
}
//*********************************Convert date into String **********************
- (NSString*) convertDateToString:(NSDate*)date dateformat:(NSString*)dateformat
{
// Convert date object to desired output format
NSDateFormatter *dateFormat1 = [[NSDateFormatter alloc] init];
[dateFormat1 setDateFormat:dateformat];
NSString *dateStr = [dateFormat1 stringFromDate:date];
[dateFormat1 release];//For NON-ARC
return dateStr;
}
希望它能帮助您这里的问题是lettureObj.data是NSString,您需要的是将其转换为date,以获得一个NSDate对象试试这个
NSString *strTemp = [NSString stringWithFormat:@"%@",lettureObj.data];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"dd/MM/yyyy HH:mm:ss"];
NSDate *date = [dateFormat dateFromString:strTemp];
[dateFormat release];
NSDateFormatter *outputDateFormatter = [[NSDateFormatter alloc] init];
[outputDateFormatter setDateFormat:@"dd/MM/yyyy HH:mm:ss"];
NSString *data = [NSString stringWithFormat:@"%@",[outputDateFormatter stringFromDate:date]];
第一个语句的结果是什么。数据:14/05/2013 10:52:27代码很好它应该可以工作,并且对我有效。lettureObj.data是NSString而不是NSDate,你做得对吗?还是要将NSString转换为NSDate?已解决BRO。问题是我在执行ettureObj.data=dateString时为lettureObj.data分配了一个NSString,这与我执行boss的操作是一样的。但我在这里不适用……请确保
lettureObj.data
是NSDate@AlessandroMattiuzzi:如果您传递了正确的数据类型参数,这些转换方法应该可以正常工作。是的,我认为这就是问题所在…但是在我的h。文件i定义它@property(非原子,复制)NSDate*数据;现在我执行lettureObj.data=[DateFormatterDateFromString:dateString];工作就是这样:)快乐的编码