我需要顯示人類可讀的NSDate本地化格式。如何使用NSDateFormatter顯示人類可讀的NSDate
目前,NSDateFormatter一次只能格式化一個日期。
但是,我可以找到關於如何做兩種日期格式的任何示例。
以下是我需要製作的一些格式示例。
10:00 - 11:00 AM 星期一2013年3月25日
10:00 AM - 11:00 PM 星期一2013年3月25日
以及這些需要以本地化格式取決於語言環境和時區。
任何人都可以在這裏遮擋一些燈光嗎?非常感謝你。
我需要顯示人類可讀的NSDate本地化格式。如何使用NSDateFormatter顯示人類可讀的NSDate
目前,NSDateFormatter一次只能格式化一個日期。
但是,我可以找到關於如何做兩種日期格式的任何示例。
以下是我需要製作的一些格式示例。
10:00 - 11:00 AM 星期一2013年3月25日
10:00 AM - 11:00 PM 星期一2013年3月25日
以及這些需要以本地化格式取決於語言環境和時區。
任何人都可以在這裏遮擋一些燈光嗎?非常感謝你。
無論你如何處理這個問題,你將不得不採取兩個字符串並將它們結合在一起。
當它歸結到它,你最終有兩個日期:
10:00 - 11:00AM Monday 25th March, 2013
^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Date1 Date2
您可以使用兩個單獨的NSDateFormatter
對象給你你需要什麼。
NSDateFormatter *timeOnlyDateFormatter = [[NSDateFormatter alloc] init];
//... set the format for the timeOnlyDateFormatter here
NSDateFormatter *fullDateFormatter = [[NSDateFormatter alloc] init];
//.. set the format for the fullDateFormatter here
有了這個,你可以使用它們來創建兩個日期1串和date2字符串,然後將它們結合起來。
NSString *firstString = [timeOnlyDateFormatter stringFromDate:firstDate];
NSString *secondString = [fullDateFormatter stringFromDate:secondDate];
NSString *combined = [NSString stringWithFormat:@"%@ - %@", firstString, secondString];
就我所知,沒有真正的方法可以做到這一點。
是的,我以前想過這個解決方案,但我堅持使用本地化的一部分。上述解決方案在格式固定時很好。但是,對於我的情況,我需要根據所用的時區和區域設置對其進行本地化。所以,格式不能修復。 – user2205732 2013-03-24 23:46:03
您可以根據區域設置更改格式。你仍然需要使用一個NSDateFormatter或滾動你自己的(這不完全是一個簡單的努力) – Malaxeur 2013-03-28 05:04:47
有時你必須編寫自己的代碼。 – 2013-03-25 00:15:24