close

本文引用自changyy - iOS 開發筆記 - 國曆轉農曆計算 (Chinese Lunar Calendar)

lunar-2013-06

把玩一下 NSCalendar ,發現他可以計算咱們華人常用的農曆日期耶!完整文件 iOS Developer Library - Date and Time Programming Guide

程式碼:

NSString *dateAt = @"2013/06/08";
NSDateFormatter *dateFormatter = [[[NSDateFormatter allocinitautorelease];
[dateFormatter setDateFormat:@"yyyy/MM/dd"];
NSDateComponents *dateComps = [[[[NSCalendar alloc]initWithCalendarIdentifier:NSChineseCalendarautoreleasecomponents:(NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnitfromDate:[dateFormatter dateFromString:dateAt]];
NSLog(@"%@ => Chinese calendar date (Lunar): %0.2d/%0.2d", dateAt, [dateComps month], [dateComps day]);

結果: 

2013/06/08 => Chinese calendar date (Lunar): 05/01

註:有的農民曆將 2013/06/08 定為農曆 04/30,故挑這天當做範例提醒算法的不同。

arrow
arrow
    全站熱搜

    zer931 發表在 痞客邦 留言(0) 人氣()


    留言列表 留言列表

    發表留言