【问题标题】:String from Date not working日期中的字符串不起作用
【发布时间】:2017-10-08 14:51:32
【问题描述】:
    -(void)viewLogAction
   {
NSDateFormatter *formatter=[[NSDateFormatter alloc]init];
[formatter setDateFormat:@"yyyy-MM-dd"];
NSDate *date = [formatter dateFromString:_selectedDate];
formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"dd-MM-yyyy"];

NSString *convertedString = [formatter stringFromDate:date];

 _allFood = [CoreDataMethods foodLogFromCoreData:convertedString];
if([_allFood count]==0)
{
    UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"No data" message:@"Sorry, No food item to display on this date" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
    [alert show];

}
else{

[self performSegueWithIdentifier:@"viewLogSegue" sender:self];

}
}

这是我的代码。 NSString _selectedDate 具有值2017-05-09,但NSDate *date = [formatter dateFromString:_selectedDate]; 行没有将任何值传递给date。请帮我找出问题。

【问题讨论】:

  • 你已分配。 formatter = [[NSDateFormatter alloc] init]; 两次删除第二次就可以了
  • 您是否调试并检查过 date 是否为零?
  • 代码运行良好。确保 _selected 日期格式正确
  • 您的代码没有问题。放置断点并调试。确保您的 _selectedDate 格式为 yyyy-MM-dd !!它没有下划线或点而不是破折号!逐行调试!打印convertedString_selectedDatedate
  • 确保_selectedDate 在字符串的两端没有空格(空格、换行符)。

标签: ios objective-c xcode nsdate nsdateformatter


【解决方案1】:

如果_selectedDate 不为零,您发布的代码可以正常工作。检查您是否正确设置了_selectedDate 中的值。

【讨论】:

  • _selectedDate 不为零。和问题一样,格式是破折号。
【解决方案2】:

试试这个

NSDateFormatter *formatter=[[NSDateFormatter alloc]init];
[formatter setDateFormat:@"yyyy-MM-dd"];
NSDate *date = [formatter dateFromString:_selectedDate];
[formatter setDateFormat:@"dd-MM-yyyy"];

【讨论】:

  • @JohnXavier 这如何解决您的问题?如果这有效,那么您的原始代码有效。
  • @rmaddy 是的,我也很困惑它如何解决你的问题@JohnXavier
  • @JohnXavier - 找到这个答案有什么不同
  • 我不知道,但删除一个formatter = [[NSDateFormatter alloc] init]; 解决了这个问题。我想这是某种奇怪的情况。如果你愿意,我可以给你两种情况的屏幕截图。 @rmaddy @naveenkumar @anbu.karthik
  • @JohnXavier 仅删除这一行无法解决您的问题。必须有比您向我们展示的更多的代码。删除的行是 应该给你nil 的行之后。
猜你喜欢
  • 2011-03-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多