标签: nsdateformatter

NSDateFormatter中"YYYY"和"yyyy"之间的区别

'YYYY'和'yyyy'之间的确切区别是什么?我在这个链接中读到,它说明了这一点

一个常见的错误是使用YYYY.yyyy指定日历年,而YYYY指定ISO年度日历中使用的年份("年度周").在大多数情况下,yyyy和YYYY会产生相同的数字,但它们可能会有所不同.通常,您应该使用日历年.

但是当我尝试使用时

NSString *stringDate = @"Feb 28, 2013 05:30pm";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"MMM dd, yyyy hh:mma"];
NSDate *date=[dateFormatter dateFromString:stringDate];
NSLog(@"Date 1 : %@",date); //2013-02-28 12:00:00 +0000

NSString *stringDatee = @"Feb 28, 2013 05:30pm";
NSDateFormatter *dateFormatterr = [[NSDateFormatter alloc] init];
[dateFormatterr setDateFormat:@"MMM dd, YYYY hh:mma"];
NSDate *datee=[dateFormatterr dateFromString:stringDatee];
NSLog(@"Date 2 : %@",datee); //2013-01-05 12:00:00 +0000

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"MMM dd, YYYY hh:mma"];
NSString *dateString = [dateFormat stringFromDate:datee];
NSLog(@"date 3 : …
Run Code Online (Sandbox Code Playgroud)

objective-c nsdate nsdateformatter ios

61
推荐指数
2
解决办法
4万
查看次数

在iOS Swift中将NSDate转换为String

我试图将a转换NSDate为a String然后更改格式.但是当我传递NSDateString它时会产生空白.

 let formatter = DateFormatter()
 let myString = (String(describing: date))
 formatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
 let yourDate: Date? = formatter.date(from: myString)
 formatter.dateFormat = "dd-MMM-yyyy"
 print(yourDate)
Run Code Online (Sandbox Code Playgroud)

nsdateformatter ios swift swift3

61
推荐指数
5
解决办法
9万
查看次数

NSDateFormatter setDateFormat的序数月 - 日后缀选项

我使用什么setDateFormat选项获取NSDateFormatter来获取一个月的序数后缀?

例如,下面的片段目前产生:
8月15日星期六下午3:11

我必须改变什么:
8月15 星期六下午3:11

NSDate *date = [NSDate date];
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setFormatterBehavior:NSDateFormatterBehavior10_4];
[dateFormatter setDateFormat:@"h:mm a EEEE MMMM d"];
NSString *dateString = [dateFormatter stringFromDate:date]; 
NSLog(@"%@", dateString);
Run Code Online (Sandbox Code Playgroud)

在PHP中,我将在上面的例子中使用它:
<?php echo date('h:m A l F jS') ?>

是否有一个NSDateFormatter等效于PHP格式化字符串中的S选项?

iphone cocoa nsdate nsdateformatter

60
推荐指数
7
解决办法
2万
查看次数

如何以am/pm格式获取时间iphone NSDateFormatter?

我正在使用NSDateFormatter在iPhone应用程序中工作.我从网络服务中得到的时间就像"00:00:00", "16:00:00","15:30:00" and so on."00:00:00" to "12 AM"如果时间是"16:00:00" to "4 PM",如果时间是"15:30:00"到"3.30 PM" ,我需要将这些时间转换为时间.我已经使用了下面的代码,但是当我通过时"16:00:00" the date returns null.

 NSString *dats1 = @"16:00:00";
 NSDateFormatter *dateFormatter3 = [[[NSDateFormatter alloc] init] autorelease];
 [dateFormatter3 setDateStyle:NSDateFormatterMediumStyle];  
 [dateFormatter3 setDateFormat:@"hh:mm:ss"]; 
 NSDate *date1 = [dateFormatter3 dateFromString:dats1];
 NSLog(@"date1 : %@", date1); **// Here returning (null)**

 NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
 [formatter setDateFormat:@"hh:mm a"];
 NSLog(@"Current Date: %@", [formatter stringFromDate:date1]); **// Here also returning (null)**
 [formatter release];
Run Code Online (Sandbox Code Playgroud)

当通过"00:00:00"时,它正确地返回"12 AM".有谁可以帮我解决这个问题?提前致谢.

iphone time nsdateformatter ios

53
推荐指数
6
解决办法
8万
查看次数

如何在iOS中将日期字符串解析为NSDate对象?

我试图将日期字符串从xml解析为iPhone应用程序中的NSDate对象

我知道之前一定要问过,但是,我相信我有正确的语法,但它不起作用.我的代码有问题吗?

我需要解析的日期字符串是:

2011-01-21T12:26:47-05:00
Run Code Online (Sandbox Code Playgroud)

我用来解析它的代码是:

self.dateFormatter = [[NSDateFormatter alloc] init];
    [self.dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
    [self.dateFormatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"] autorelease]];
    [self.dateFormatter setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'"];



... 

else if([elementName isEqualToString:kUpdated]){
    self.currentQuestion.updated = [self.dateFormatter dateFromString:self.currentParsedCharacterData ];
}
Run Code Online (Sandbox Code Playgroud)

任何帮助非常感谢.谢谢!

**基于来自ChrisKent的链接参考,我修复了这样的问题:

else if([elementName isEqualToString:kLastOnDeck]){

    NSString *dateStr = self.currentParsedCharacterData;
    // we need to strip out the single colon
    dateStr = [dateStr stringByReplacingOccurrencesOfString:@":" 
                                                 withString:@"" 
                                                    options:0 
                                                      range:NSMakeRange([dateStr length] - 5,5)];




    self.currentQuestion.lastOnDeck = [dateFormatter dateFromString:dateStr];

}
Run Code Online (Sandbox Code Playgroud)

iphone objective-c nsdate nsdateformatter ios

48
推荐指数
1
解决办法
4万
查看次数

如何在Swift iOS中将字符串转换为日期字符串?

我正在学习swift,并且将日期String转换为NSDate转换为字符串.我以这种格式获取日期字符串"星期四,2015年10月22日07:45:17 +0000".我需要以MM-dd-yyyy格式显示日期.我尝试了以下代码,但它返回"null".

let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "MM-dd-yyyy"
dateFormatter.dateStyle = NSDateFormatterStyle.MediumStyle
let dateObj = dateFormatter.dateFromString(dateString!)
print("Dateobj: \(dateObj)")
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助在哪里出错?期待着帮助.提前致谢.

string nsdate nsdateformatter ios swift

48
推荐指数
3
解决办法
10万
查看次数

有没有一种简单的方法将ISO8601时间戳转换为格式化的NSDate?

如果我使用以下代码:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];   
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm"];
NSDate *myDate = [dateFormatter dateFromString:@"2010-01-28T15:22:23.863"];
NSLog(@"%@", [dateFormatter stringFromDate:myDate]);
Run Code Online (Sandbox Code Playgroud)

它成功地转换为一个Date对象,但是,我似乎无法以任何其他方式格式化它yyyy-MM-dd'T'HH:mm,即记录的是什么2010-01-28T15:22:23

如果我更改dateFormat以说[dateFormatter setDateFormat:@"yyyy-MMMM-d'T'HH:mm"];Date对象为null ...

所以我的最终问题是如何格式化SQL数据库中的ISO8601时间戳,以便使用,例如,NSDateFormatterMediumStyle返回"2010年1月1日"?

objective-c iso8601 nsdate nsdateformatter

46
推荐指数
6
解决办法
3万
查看次数

为什么分配或初始化NSDateFormatter被认为是"昂贵的"?

当人们说这很贵时,人们的意思是什么?我为中间存储创建了许多瞬态对象的实例(NSString和NSDate是典型的).我怎么知道我的程序使用NSDateFormatter是否过度了?

到目前为止,我倾向于创建相当于单身的东西,但我的偏好是将其封装到与之关联的其他一些对象中,以便我可以使用自引用.

没有运行性能测试,我正在寻找一个更好的"经验法则"理解为什么我应该或不应该这样做.

nsdateformatter ios

45
推荐指数
2
解决办法
8050
查看次数

NSDateFormatter 24小时

我有一个倒数计时器,从当前日期/时间到特定的未来日期/时间倒计时.除了一个问题外,它工作得很好.我使用NSDateFormatter和dateFromString输入未来日期.它似乎无法接受超过12的任何时间(小时),虽然表明它不支持24小时制.有没有办法启用24小时时钟支持或解决方法?这是我的一些代码:

NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"yyyy-MM-dd hh:mm:ss"];
NSDate *myDate = [df dateFromString:@"2010-03-14 15:00:00"];
Run Code Online (Sandbox Code Playgroud)

谢谢

iphone objective-c nsdateformatter

43
推荐指数
4
解决办法
3万
查看次数

在swift的首都显示上午/下午

我编写了以下代码来显示特定格式的日期时间:

let formatter = NSDateFormatter()
formatter.dateStyle = NSDateFormatterStyle.LongStyle
formatter.timeStyle = .MediumStyle
formatter.dateFormat = "HH:mm a 'on' MMMM dd, yyyy"
let dateString = formatter.stringFromDate(newDate!)
println(dateString)
Run Code Online (Sandbox Code Playgroud)

产量

12:16 pm on July 17, 2015
Run Code Online (Sandbox Code Playgroud)

我想将'pm'显示为'PM'(在大写字母中),如果手机有24小时格式,则不应显示AM/PM.请帮我.

nsdateformatter swift

43
推荐指数
2
解决办法
4万
查看次数

标签 统计

nsdateformatter ×10

ios ×6

nsdate ×5

iphone ×4

objective-c ×4

swift ×3

cocoa ×1

iso8601 ×1

string ×1

swift3 ×1

time ×1