- 浏览: 183831 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
wenm168:
这里有iText 5.5导出pdf, 比较常用的功能及表格画斜 ...
JAVA利用iText导出PDF -
dcj3sjt126com:
您好,我情况和您一样,然后我按照这个方式做了之后,没有效果,还 ...
UITableView与UIPageViewController的UIPanGestureRecognizer手势冲突解决办法 -
mao_siyu:
这个jar 包 和 这代码里面的类 不一致了,楼主 能改一下吗 ...
JAVA利用iText导出PDF -
wenjie4892543:
写的好。。。
利用jqueryzoom实现图片放大镜效果 -
wenjie4892543:
写的好。。。
oracle实操
C: 代码: /*------------农历转换函数-----------*/ /*属相名称*/ /*农历日期名*/ "廿一","廿二","廿三","廿四","廿五","廿六","廿七","廿八","廿九","三十"}; /*农历月份名*/ /*公历每月前面的天数*/ /*农历数据*/ 3402,3749,331177,1453,694,201326,2350,465197,3221,3402, 400202,2901,1386,267611,605,2349,137515,2709,464533,1738, 2901,330421,1242,2651,199255,1323,529706,3733,1706,398762, 2741,1206,267438,2647,1318,204070,3477,461653,1386,2413, 330077,1197,2637,268877,3365,531109,2900,2922,398042,2395, 1179,267415,2635,661067,1701,1748,398772,2742,2391,330031, 1175,1611,200010,3749,527717,1452,2742,332397,2350,3222, 268949,3402,3493,133973,1386,464219,605,2349,334123,2709, 2890,267946,2773,592565,1210,2651,395863,1323,2707,265877}; static int wCurYear,wCurMonth,wCurDay; /*---计算到初始时间1921年2月8日的天数:1921-2-8(正月初一)---*/ /*--计算农历天干、地支、月、日---*/ nBit = wNongliData[m]; nBit = nBit % 2; if (nTheDate <= (29 + nBit)) nTheDate = nTheDate - 29 - nBit; } { } } /*--生成农历天干、地支、属相 ==> wNongli--*/ /*--生成农历月、日 ==> wNongliDay--*/ } } strcat(szNongliDay,"月"); } Objective-C 代码: //农历转换函数 -(NSString *)LunarForSolar:(NSDate *)solarDate{ //天干名称 NSArray *cTianGan = [NSArrayarrayWithObjects:@"甲",@"乙",@"丙",@"丁",@"戊",@"己",@"庚",@"辛",@"壬",@"癸", nil]; //地支名称 NSArray *cDiZhi = [NSArrayarrayWithObjects:@"子",@"丑",@"寅",@"卯",@"辰",@"巳",@"午",@"未",@"申",@"酉",@"戌",@"亥",nil]; //属相名称 NSArray *cShuXiang = [NSArrayarrayWithObjects:@"鼠",@"牛",@"虎",@"兔",@"龙",@"蛇",@"马",@"羊",@"猴",@"鸡",@"狗",@"猪",nil]; //农历日期名 NSArray *cDayName = [NSArray arrayWithObjects:@"*",@"初一",@"初二",@"初三",@"初四",@"初五",@"初六",@"初七",@"初八",@"初九",@"初十", @"十一",@"十二",@"十三",@"十四",@"十五",@"十六",@"十七",@"十八",@"十九",@"二十", @"廿一",@"廿二",@"廿三",@"廿四",@"廿五",@"廿六",@"廿七",@"廿八",@"廿九",@"三十",nil]; //农历月份名 NSArray *cMonName = [NSArrayarrayWithObjects:@"*",@"正",@"二",@"三",@"四",@"五",@"六",@"七",@"八",@"九",@"十",@"十一",@"腊",nil]; //公历每月前面的天数 const int wMonthAdd[12] = {0,31,59,90,120,151,181,212,243,273,304,334}; //农历数据 const int wNongliData[100] = {2635,333387,1701,1748,267701,694,2391,133423,1175,396438 ,3402,3749,331177,1453,694,201326,2350,465197,3221,3402 ,400202,2901,1386,267611,605,2349,137515,2709,464533,1738 ,2901,330421,1242,2651,199255,1323,529706,3733,1706,398762 ,2741,1206,267438,2647,1318,204070,3477,461653,1386,2413 ,330077,1197,2637,268877,3365,531109,2900,2922,398042,2395 ,1179,267415,2635,661067,1701,1748,398772,2742,2391,330031 ,1175,1611,200010,3749,527717,1452,2742,332397,2350,3222 ,268949,3402,3493,133973,1386,464219,605,2349,334123,2709 ,2890,267946,2773,592565,1210,2651,395863,1323,2707,265877}; static int wCurYear,wCurMonth,wCurDay; static int nTheDate,nIsEnd,m,k,n,i,nBit; //取当前公历年、月、日 NSDateComponents *components = [[NSCalendar currentCalendar] components:NSDayCalendarUnit |NSMonthCalendarUnit | NSYearCalendarUnit fromDate:solarDate]; wCurYear = [components year]; wCurMonth = [components month]; wCurDay = [components day]; //计算到初始时间1921年2月8日的天数:1921-2-8(正月初一) nTheDate = (wCurYear - 1921) * 365 + (wCurYear - 1921) / 4 + wCurDay + wMonthAdd[wCurMonth - 1] - 38; if((!(wCurYear % 4)) && (wCurMonth > 2)) nTheDate = nTheDate + 1; //计算农历天干、地支、月、日 nIsEnd = 0; m = 0; while(nIsEnd != 1) { if(wNongliData[m] < 4095) k = 11; else k = 12; n = k; while(n>=0) { //获取wNongliData(m)的第n个二进制位的值 nBit = wNongliData[m]; for(i=1;i<n+1;i++) nBit = nBit/2; nBit = nBit % 2; if (nTheDate <= (29 + nBit)) { nIsEnd = 1; break; } nTheDate = nTheDate - 29 - nBit; n = n - 1; } if(nIsEnd) break; m = m + 1; } wCurYear = 1921 + m; wCurMonth = k - n + 1; wCurDay = nTheDate; if (k == 12) { if (wCurMonth == wNongliData[m] / 65536 + 1) wCurMonth = 1 - wCurMonth; else if (wCurMonth > wNongliData[m] / 65536 + 1) wCurMonth = wCurMonth - 1; } //生成农历天干、地支、属相 NSString *szShuXiang = (NSString *)[cShuXiang objectAtIndex:((wCurYear - 4) % 60) % 12]; NSString *szNongli = [NSString stringWithFormat:@"%@(%@%@)年",szShuXiang, (NSString *)[cTianGanobjectAtIndex:((wCurYear - 4) % 60) % 10],(NSString *)[cDiZhi objectAtIndex:((wCurYear - 4) % 60) %12]]; //生成农历月、日 NSString *szNongliDay; if (wCurMonth < 1){ szNongliDay = [NSString stringWithFormat:@"闰%@",(NSString *)[cMonName objectAtIndex:-1 * wCurMonth]]; } else{ szNongliDay = (NSString *)[cMonName objectAtIndex:wCurMonth]; } NSString *lunarDate = [NSString stringWithFormat:@"%@ %@月 %@",szNongli,szNongliDay,(NSString*)[cDayName objectAtIndex:wCurDay]]; return lunarDate; }
char *GetDayOf(PSYSTEMTIME pSt)
{
/*天干名称*/
const char *cTianGan[] = {"甲","乙","丙","丁","戊","己","庚","辛","壬","癸"};
/*地支名称*/
const char *cDiZhi[] = {"子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥"};
const char *cShuXiang[] = {"鼠","牛","虎","兔","龙","蛇","马","羊","猴","鸡","狗","猪"};
const char *cDayName[] = {"*","初一","初二","初三","初四","初五","初六","初七","初八","初九","初十","十一","十二","十三","十四","十五","十六","十七","十八","十九","二十",
const char *cMonName[] = {"*","正","二","三","四","五","六","七","八","九","十","十一","腊"};
const int wMonthAdd[12] = {0,31,59,90,120,151,181,212,243,273,304,334};
const int wNongliData[100] = {2635,333387,1701,1748,267701,694,2391,133423,1175,396438,
static int nTheDate,nIsEnd,m,k,n,i,nBit;
TCHAR szNongli[30], szNongliDay[10],szShuXiang[10];
/*---取当前公历年、月、日---*/
wCurYear = pSt->wYear;
wCurMonth = pSt->wMonth;
wCurDay = pSt->wDay;
nTheDate = (wCurYear - 1921) * 365 + (wCurYear - 1921) / 4 + wCurDay + wMonthAdd[wCurMonth - 1] - 38;
if((!(wCurYear % 4)) && (wCurMonth > 2))
nTheDate = nTheDate + 1;
nIsEnd = 0;
m = 0;
while(nIsEnd != 1)
{
if(wNongliData[m] < 4095)
k = 11;
else
k = 12;
n = k;
while(n>=0)
{
//获取wNongliData(m)的第n个二进制位的值
for(i=1;i<n+1;i++)
nBit = nBit/2;
{
nIsEnd = 1;
break;
}
n = n - 1;
}
if(nIsEnd){
break;
m = m + 1;
}
wCurYear = 1921 + m;
wCurMonth = k - n + 1;
wCurDay = nTheDate;
if (k == 12)
if (wCurMonth == wNongliData[m] / 65536 + 1){
wCurMonth = 1 - wCurMonth;
else if (wCurMonth > wNongliData[m] / 65536 + 1){
wCurMonth = wCurMonth - 1;
}
wsprintf(szShuXiang,"%s",cShuXiang[((wCurYear - 4) % 60) % 12]);
wsprintf(szNongli,"%s(%s%s)年",szShuXiang,cTianGan[((wCurYear - 4) % 60) %10],cDiZhi[((wCurYear - 4) % 60) % 12]);
if (wCurMonth < 1){
wsprintf(szNongliDay,"闰%s",cMonName[-1 * wCurMonth]);
else{
strcpy(szNongliDay,cMonName[wCurMonth]);
strcat(szNongliDay,cDayName[wCurDay]);
return strcat(szNongli,szNongliDay);
发表评论
-
CocoaPods本地库管理使用笔记
2016-09-05 16:34 1272设置预编译头文件方式1:s.prefix_heade ... -
AFNetWorking and SDUrlCache 缓存http请求
2014-11-03 14:25 1718SDURLCache *urlCache = [ ... -
设计一个移动应用的本地缓存机制
2014-07-28 11:30 0在手机应用程序开发中,为了减少与服务端的交互次数,加快用户 ... -
IOS开发问题集
2014-07-28 10:42 1049IOS学习问题集 1.UIWebVie ... -
UIWebView问题
2014-07-28 10:00 11351.UIWebView内嵌在UITableView里,web ... -
加载bundle资源方法
2014-06-27 09:37 485[UIImage imageNamed:@" ... -
IOS检测版本更新
2014-06-27 08:42 680如果我们要检测app版本的更新,那么我们必须获取当前运行a ... -
iOS开发中混合使用ARC和非ARC项目
2014-03-06 15:19 778在开发 iOS 3 以及之前的版本的项目时我们要自己负责使用 ... -
关于IOS7应用兼容IOS6
2014-03-06 09:57 909大家都知道现在IOS7已经没有独立的状态栏啦,IOS7默认新 ... -
Objective-C代码注释和文档输出的工具和方法
2014-02-17 11:27 1597代码注释可以让代码更容易接受和使用,特别是在大型项目合作开发 ... -
Tiled地图编辑操作技巧
2013-11-06 15:01 1057Tiled有四种方式可以编辑瓷砖地图,菜单 ... -
UITableView与UIPageViewController的UIPanGestureRecognizer手势冲突解决办法
2013-08-16 10:19 13192最近在项目中使用了UIPageViewController来 ... -
IOS代码调试技巧
2013-07-26 10:07 747#define NSA ... -
IOS项目SVN设置
2013-06-17 15:35 1189在团队开发中,经常我们会使用SVN来管理源代码,本人使用Sm ... -
使用Objective-C的文档生成工具:Appledoc
2013-04-25 11:41 2207在项目中经常需要文档 ... -
跳转到app评论页面
2013-04-23 15:56 1146在APP里经常会引导用户给自己的应用评分,实现代码如下: ... -
objc_getAssociatedObject, objc_setAssociatedObject
2012-12-06 11:04 10503category与associative作为object ... -
Popover View
2012-10-10 09:37 927http://blog.getsherpa.com/blog/ ... -
pinyin中文首字母排序
2012-10-10 09:16 1344因项目需要对通讯录中的联系人进行排序,需要对中文字符进行 ... -
自定义控件复选框和单选框的实现
2012-09-25 13:59 1149我们先实现单个按钮,为了复用,不管单选还是复选按钮都 ...
相关推荐
这个"IOS应用源码——object-c阳历转阴历算法.zip"压缩包中包含的就是Objective-C实现的阳历到阴历转换的代码示例。以下是对这个算法的详细解释和相关知识点的展开。 1. **Objective-C语言基础**:Objective-C是...
公历(阳历) 农历(阴历)转换,支持时间段从 1900-2100 如果需要更长的时间段,利用 generate.htm 生成的数据即可。 支持各种编程语言 C#,java,Objective-C,php,Python,javascript(nodejs),C/C++,ruby,swift,golang 等...
公历(阳历)农历(阴历)转换,支持时间段从1900-2100如果需要更长的时间段,利用generate.htm生成的数据即可。支持各种编程语言C#,java,Objective-C,php,Python,javascript(nodejs),C / C ++,ruby,...
ChineseCalendar是一个基于Objective-C编写的iOS应用插件,它专门设计用于在用户的通知中心显示公历和农历日期,为用户提供便捷的时间查询服务。这款插件的独特之处在于,它将日常使用的日期信息融入到通知中心这一...
Objective-C 是苹果开发环境中用于构建iOS和Mac应用的主要编程语言,其在处理日期和时间时提供了丰富的类和方法。在Objective-C中,处理日期和时间的核心类是 `NSDate`,它表示一个特定的瞬间,包括日期和时间。下面...
为了实现这些功能,开发者需要熟悉Objective-C或Swift编程语言,以及iOS的UIKit框架,尤其是UIControl、UICollectionView等组件的使用。此外,熟悉EventKit框架和Core Data(用于存储用户创建的事件)也是必不可少的...
通过设置`NSCalendar`的历法类型,我们可以根据公历或农历计算年龄和星座。 在Swift中,虽然没有直接的选择器概念,但函数名在某种程度上起到了相同的作用。在这个项目中,如果代码是用Swift编写的,那么可能会有...
首先,我们来看第一种方法,使用`Calendar`(在Objective-C中为`NSCalendar`)获取公历年月日。`Calendar`是Swift中的一个类,它代表了日期和时间的计算规则。在iOS中,通常使用格里高利历(Gregorian calendar),...
《日月计算:Objective-C实现的日月历法解析与应用》 在计算机科学尤其是软件开发领域,日月计算是一项基础但至关重要的任务。Objective-C,作为苹果生态系统的主要编程语言之一,常常被用来构建各种时间计算相关的...
2. 农历与公历转换:提供两个主要方法,`lunarToSolar()`和`solarToLunar()`,分别用于农历转公历和公历转农历的计算。 3. 月相计算:根据农历日期,计算对应的月相(新月、上弦月、满月、下弦月)。 4. 节气计算:...
通过objective-c实现了类似iphone系统日历的日历,项目里着重实现了类似iphone系统日历的布局、封装了阳历和阴历的互相转换。 简单地实现了日历事件的创建 并添加到EKEventStore中
这个过程涉及到的主要知识点包括:NSDate分类、NSDateComponents、NSCalendar、第三方库的集成以及Swift或Objective-C的编程实践。在实际项目中,可以根据需求选择不同的农历转换库,或者自定义算法来实现农历和公历...
"SKDatePickerView"可能是一个自定义的Objective-C组件,专为iOS应用设计,以提供更高效、灵活的日期选择功能。下面我们将深入探讨这个组件及其可能包含的功能。 首先,"日期选择器"是一个常见的UI元素,iOS开发者...
- 公历农历转换:对于中国市场,往往需要同时显示公历和农历日期。 - 数据同步:与云服务或其他设备同步日程,保持信息一致性。 3. **技术实现**: - Web应用:HTML5的`<input type="date">`提供基本的日历功能...
中国农历,也称为阴历,与公历不同,它是根据月相来计算的。WHUCalendar组件的显著特点就是支持农历显示,这使得用户可以在查看日期的同时看到对应的农历日期,这对于需要关注农历日期的用户非常有用,例如节假日、...
- `NSCalendar`可以用于设置日历的样式,如公历、阴历等,以及日期的比较,如判断某日期是否在范围内。 3. **事件处理**: - 监听`UIDatePicker`的`valueChanged`事件,当用户选择新的日期时更新对应日期字段,并...
开发者需要熟悉Xcode的界面和功能,包括Interface Builder(用于设计用户界面)和Swift或Objective-C编程语言。 2. **Swift编程语言**:此项目很可能是使用Swift编写的,因为它是现代iOS开发的首选语言。Swift语法...
- **使用框架**:对于移动端,可能使用Android的Java或Kotlin,iOS的Swift或Objective-C,配合对应的UI框架如Android的AndroidX或iOS的UIKit。对于Web应用,可能会用到React、Vue或Angular等前端框架。 4. **数据...
在Objective-C或Swift中,苹果提供了`NSCalendar`、`NSDate`、`NSDateComponents`等类来处理日期和时间。`NSCalendar`用于设置日历的规则和格式,如公历、农历等;`NSDate`是表示绝对时间的类,不包含任何格式信息;...