获取农历日期,指定日期格式
2013-08-14 09:09
423 查看
+ (NSString *)g
4000
etDateWithString:(NSString *)format//format指定的格式如:yyyy-MM-dd hh:mm:ss
{
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:format];
NSString *dateString = [dateFormatter stringFromDate:[NSDate date]];
[dateFormatter release];
return dateString;
}
// 获取农历日期
+ (NSString*)getChineseCalendarWithDate:(NSDate *)date
{
NSArray *chineseYears = [NSArray arrayWithObjects:
@"甲子", @"乙丑", @"丙寅",
@"丁卯", @"戊辰", @"己巳", @"庚午", @"辛未",
@"壬申", @"癸酉",
@"甲戌", @"乙亥", @"丙子",
@"丁丑", @"戊寅", @"己卯", @"庚辰", @"辛己",
@"壬午", @"癸未",
@"甲申", @"乙酉", @"丙戌",
@"丁亥", @"戊子", @"己丑", @"庚寅", @"辛卯",
@"壬辰", @"癸巳",
@"甲午", @"乙未", @"丙申",
@"丁酉", @"戊戌", @"己亥", @"庚子", @"辛丑",
@"壬寅", @"癸丑",
@"甲辰", @"乙巳", @"丙午",
@"丁未", @"戊申", @"己酉", @"庚戌", @"辛亥",
@"壬子", @"癸丑",
@"甲寅", @"乙卯", @"丙辰",
@"丁巳", @"戊午", @"己未", @"庚申", @"辛酉",
@"壬戌", @"癸亥", nil];
NSArray *chineseMonths=[NSArray arrayWithObjects:
@"正月", @"二月", @"三月",
@"四月", @"五月", @"六月", @"七月", @"八月",
@"九月", @"十月", @"冬月",
@"腊月", nil];
NSArray *chineseDays=[NSArray arrayWithObjects:
@"初一", @"初二", @"初三",
@"初四", @"初五", @"初六", @"初七", @"初八",
@"初九", @"初十",
@"十一", @"十二", @"十三",
@"十四", @"十五", @"十六", @"十七", @"十八",
@"十九", @"二十",
@"廿一", @"廿二", @"廿三",
@"廿四", @"廿五", @"廿六", @"廿七", @"廿八",
@"廿九", @"三十", nil];
NSCalendar *localeCalendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSChineseCalendar];
unsigned unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit;
NSDateComponents *localeComp = [localeCalendar components:unitFlags fromDate:date];
NSString *y_str = [chineseYears objectAtIndex:localeComp.year-1];
NSString *m_str = [chineseMonths objectAtIndex:localeComp.month-1];
NSString *d_str = [chineseDays objectAtIndex:localeComp.day-1];
NSString *chineseCal_str =[NSString stringWithFormat: @"%@年%@%@",y_str,m_str,d_str];
[localeCalendar release];
return chineseCal_str;
}
+ (NSString*)getWeek
{
NSCalendar *calendar = [[[NSCalendar alloc] initWithCalendarIdentifier:NSChineseCalendar] autorelease];
NSDateComponents *components = [calendar components:NSWeekdayCalendarUnit fromDate:[NSDate date]];
NSInteger week = [components weekday];
switch (week) {
case 1:
return @"周日";
break;
case 2:
return @"周一";
break;
case 3:
return @"周二";
break;
case 4:
return @"周三";
break;
case 5:
return @"周四";
break;
case 6:
return @"周五";
break;
case 7:
return @"周六";
break;
default:
return @"周六";
break;
}
}
4000
etDateWithString:(NSString *)format//format指定的格式如:yyyy-MM-dd hh:mm:ss
{
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:format];
NSString *dateString = [dateFormatter stringFromDate:[NSDate date]];
[dateFormatter release];
return dateString;
}
// 获取农历日期
+ (NSString*)getChineseCalendarWithDate:(NSDate *)date
{
NSArray *chineseYears = [NSArray arrayWithObjects:
@"甲子", @"乙丑", @"丙寅",
@"丁卯", @"戊辰", @"己巳", @"庚午", @"辛未",
@"壬申", @"癸酉",
@"甲戌", @"乙亥", @"丙子",
@"丁丑", @"戊寅", @"己卯", @"庚辰", @"辛己",
@"壬午", @"癸未",
@"甲申", @"乙酉", @"丙戌",
@"丁亥", @"戊子", @"己丑", @"庚寅", @"辛卯",
@"壬辰", @"癸巳",
@"甲午", @"乙未", @"丙申",
@"丁酉", @"戊戌", @"己亥", @"庚子", @"辛丑",
@"壬寅", @"癸丑",
@"甲辰", @"乙巳", @"丙午",
@"丁未", @"戊申", @"己酉", @"庚戌", @"辛亥",
@"壬子", @"癸丑",
@"甲寅", @"乙卯", @"丙辰",
@"丁巳", @"戊午", @"己未", @"庚申", @"辛酉",
@"壬戌", @"癸亥", nil];
NSArray *chineseMonths=[NSArray arrayWithObjects:
@"正月", @"二月", @"三月",
@"四月", @"五月", @"六月", @"七月", @"八月",
@"九月", @"十月", @"冬月",
@"腊月", nil];
NSArray *chineseDays=[NSArray arrayWithObjects:
@"初一", @"初二", @"初三",
@"初四", @"初五", @"初六", @"初七", @"初八",
@"初九", @"初十",
@"十一", @"十二", @"十三",
@"十四", @"十五", @"十六", @"十七", @"十八",
@"十九", @"二十",
@"廿一", @"廿二", @"廿三",
@"廿四", @"廿五", @"廿六", @"廿七", @"廿八",
@"廿九", @"三十", nil];
NSCalendar *localeCalendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSChineseCalendar];
unsigned unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit;
NSDateComponents *localeComp = [localeCalendar components:unitFlags fromDate:date];
NSString *y_str = [chineseYears objectAtIndex:localeComp.year-1];
NSString *m_str = [chineseMonths objectAtIndex:localeComp.month-1];
NSString *d_str = [chineseDays objectAtIndex:localeComp.day-1];
NSString *chineseCal_str =[NSString stringWithFormat: @"%@年%@%@",y_str,m_str,d_str];
[localeCalendar release];
return chineseCal_str;
}
+ (NSString*)getWeek
{
NSCalendar *calendar = [[[NSCalendar alloc] initWithCalendarIdentifier:NSChineseCalendar] autorelease];
NSDateComponents *components = [calendar components:NSWeekdayCalendarUnit fromDate:[NSDate date]];
NSInteger week = [components weekday];
switch (week) {
case 1:
return @"周日";
break;
case 2:
return @"周一";
break;
case 3:
return @"周二";
break;
case 4:
return @"周三";
break;
case 5:
return @"周四";
break;
case 6:
return @"周五";
break;
case 7:
return @"周六";
break;
default:
return @"周六";
break;
}
}
相关文章推荐
- 获取指定格式的日期字符串,包括前一天或者几天
- 根据指定格式获取当前日期
- iPhone 获取指定格式的时间和日期
- Android 字符串转指定格式时间 日期处理 去掉月份或天多余的0 获取今天 昨天 明天等的日期和星期
- JAVA获取当前日期以及将字符串转成指定格式的日期
- javascript按照指定格式获取上一个月的日期
- 获取字符串格式的日期列中,指定的年月日
- JAVA获取指定格式日期
- Java 以指定日期时间格式获取当前时间、以及每隔一秒刷新一次的方法------附带实例
- java通过传入一个指定日期获取该日期所在周的周一的日期,日期格式如:2016-07-30
- Java各种日期格式的获取和设置指定日期
- JAVA获取当前日期以及将字符串转成指定格式的日期
- sql server 获取指定格式的当前日期
- 使用sqlserver日期函数获取当前日期(指定格式)
- js中使用eval()方法将字符串转换成日期格式、并获取指定时间的日期
- iPhone 获取指定格式的时间和日期
- js日期操作之根据指定格式获取日期
- 使用sqlserver日期函数获取当前日期(指定格式)
- java根据日期获取农历信息
- freemarker将指定日期字符串转换为指定的格式