我是iPhone新手。我想將默認日期設置爲NSDate Object作爲字符串。我不明白我覺得可能是在NSCalender的方法沒有簡單的方法或方法...有沒有簡單的方法來獲取日期?
?如果有這樣的方法,請告訴我。
在此先感謝。
我是iPhone新手。我想將默認日期設置爲NSDate Object作爲字符串。我不明白我覺得可能是在NSCalender的方法沒有簡單的方法或方法...有沒有簡單的方法來獲取日期?
?如果有這樣的方法,請告訴我。
在此先感謝。
編輯:上架時間格式化字符串。
您需要看NSDate和NSDateFormatter類。這裏有一個如何使用它們一個簡單的例子:
NSString* defaultDateString = [NSString stringWithFormat:@"2011-01-22 15:30:00"];
NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate* defaultDate = [dateFormatter dateFromString:defaultDateString];
[dateFormatter release];
,如果你想從一個日期獲取字符串你可以使用:
NSString* defaultDateString = [dateFormatter stringFromDate:defaultDate];
我不是你是什麼完全清楚問,但與當前日期創建一個NSDate對象的一個實例,一個調用: 的NSDate *數值指明MyDate = [NSDate的日期];
如果你說你有一個需要被解析到初始化一個NSDate對象的c字符串或NSString的,是另外一個問題。
我這裏有一些代碼貼: How get a datetime column in SQLite with Objective C
展示瞭如何創建使用NSDateFormatter NSString的NSDates。
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc]init]autorelease];
[dateFormatter setDateFormat:@"yyyy-mm-dd"];
NSDate *yourDate = [dateFormatter dateFromString:@"2011-01-26"];
四個空格縮進是所有你需要的代碼塊。另外,歡迎來到這個網站! –
「mm」是分鐘的說明符,而不是幾個月。因此,您的示例/外觀/喜歡它的工作原理是因爲1月是默認月份,但實際上創建的日期爲2011年1月26日00:01本地時間。如果你的日期是'2011-10-01',創建日期將是1/Jan/2011在00:10本地O_O小心! –
確定它很好,但它不需要24小時的時間,我該怎麼辦? – Ankit
如果你想從一個字符串創建一個NSDate,你需要使用一個NSDateFormatter來做到這一點。請注意格式化程序在構建日期時將使用當前區域設置的時區,除非您將時區作爲格式的一部分。有關構建時區的更多信息,請參閱NSTimeZone。
例如,使用無處不在的格式UTC「2011-01-16 00:00」創建一個日期,你會怎麼做:
NSDateFormatter* formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd HH:mm"];
// Only certain abbreviations are okay, like UTC. See docs for more info
[formatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]];
NSDate* midnight_26_jan_2011_utc = [formatter dateFromString:@"2011-01-26 00:00"];
// this will display in your system locale
// (for me, it shows 2011-01-25 19:00 +0500 because I'm America/New_York time)
NSLog(@"date: %@", midnight_26_jan_2011_utc);
[formatter release];
喜賈森感謝您的回答,但我有在服用24小時的時間問題..如果我拿13:00比它不是在我的櫃檯正常工作,所以幫我 – Ankit
@Ankit你可以連續使用12小時的時間,否則就沒時間在所有。如果你不關心時間部分,不要把HH:mm放在那裏;如果你想要12小時的時間,你可以用hh:mm代替。 –
NSDateFormatter *DateFormatter=[[NSDateFormatter alloc] init];
[DateFormatter setTimeZone:[NSTimeZone defaultTimeZone]];
[DateFormatter setDateFormat:@"yyyy-MM-dd hh:mm:ss"]; //here,you can set the date format as you need
NSDate *now = [[[NSDate alloc] init]autorelease];
NSString *theDate = [DateFormatter stringFromDate:now];
現在,您可以使用字符串日期。 :)
yup buddy我忘了sudenly我從我自己的代碼得到答案.......但非常感謝你給我時間 – Ankit