iOS一些关于日历的问题
int CalculateDays(int ys, int ms, int ds, int ye, int me, int de)
{
int days = CalcYearRestDays(ys, ms, ds);
if(ys != ye) /*不是同一年的日期*/
{
if((ye - ys) >= ) /*间隔超过一年,要计算间隔的整年时间*/
{
days += CalcYearsDays(ys + , ye);
}
days += CalcYearPassedDays(ye, me, de);
}
else
{
days = days - CalcYearRestDays(ye, me, de);
}
return days;
}
/*计算一年中过去的天数,包括指定的这一天*/
int CalcYearPassedDays(int year, int month, int day)
{
int passedDays = ;
int i;
for(i = ; i < month - ; i++)
{
passedDays += daysOfMonth[i];
}
passedDays += day;
if((month > ) && IsLeapYear(year))
passedDays++;
return passedDays;
}
/*计算一年中还剩下的天数,不包括指定的这一天*/
int CalcYearRestDays(int year, int month, int day)
{
int leftDays = daysOfMonth[month - ] - day;
int i;
for(i = month; i < MONTHES_FOR_YEAR; i++)
{
leftDays += daysOfMonth[i];
}
if((month <= ) && IsLeapYear(year))
leftDays++;
return leftDays;
}
/*
79 计算years年1月1日和yeare年1月1日之间的天数,
80 包括years年1月1日,但是不包括yeare年1月1日
81 */
int CalcYearsDays(int years, int yeare)
{
int days = ;
int i;
for(i = years; i < yeare; i++)
{
if(IsLeapYear(i))
days += DAYS_OF_LEAP_YEAR;
else
days += DAYS_OF_NORMAL_YEAR;
}
return days;
}
iOS一些关于日历的问题的更多相关文章
- 设置代码ios 6添加日历事件No calendar has been set.错误
查了好多资料,发明还是不全,干脆自己整理吧,至少保证在我的做法正确的,以免误导读者,也是给自己做个记录吧! 在iOS 6做日历事件添加时,来来回回报错,No calendar has been set ...
- iOS - OC NSCalendar 日历
前言 @interface NSCalendar : NSObject <NSCopying, NSSecureCoding> NSCalendar 对世界上现存的常用的历法进行了封装,既 ...
- iOS - Swift NSCalendar 日历
前言 public class NSCalendar : NSObject, NSCopying, NSSecureCoding NSCalendar 对世界上现存的常用的历法进行了封装,既提供了不同 ...
- iOS中的日历
iOS自带三种日历,公历.佛教日历和日本日历,要设置日历可以进入"设置-通用-语言与地区-日历"设置,我们中国使用的iPhone默认设置成公历.而泰国人使用的iPhone默认设置的 ...
- iOs 自定义UIView 日历的实现 Swift2.1
学习Swift有一个月了,动手写一个UIView吧. 所有源代码在最后,直接用就可以了,第一次写Swift,和C#,Java还是有区别的 (博客园可以考虑在代码插入中添加Swift的着色了) 1 函 ...
- iOS 给三方日历加上农历
首先创建一个农历文件 LunarCalendar.h // // LunarCalendar.h // Hnair4iPhone // // Created by yingkong1987 on 13 ...
- ios中VRGCalendarView日历控件
http://pan.baidu.com/share/link?shareid=4166002480&uk=923776187 官网 https://github.com/TjeerdVuri ...
- 一些iOS高效开源类库
因为iOS SDK相对比较底层,所以开发者就得受累多做一些体力活.不过幸运的是,有很多第三方的类库可以用来简化很多不必要的工作.笔者整理了一下在本人学习过程中用到的一些比较有用Objective-C开 ...
- IOS一些高效的第三方框架库
MBProgressHUD ——进展指示符库 苹果的应用程序一般都会用一种优雅的,半透明的进度显示效果,不过这个API是不公开的,因此你要是用了,很可能被清除出AppStore.而 MBProgres ...
随机推荐
- form表单里如果只存在一个文本框,enter键提交
在这里说一说浏览器里form表单的默认行为 我们都知道浏览器是存在很多默认行为的,可能是出于常用行为考虑又或者是历史原因.但有时候我们不需要这些默认行为.以下: 1).当form表单里只存在一个inp ...
- Bootstrap Table Examples
The examples of bootstrap table http://bootstrap-table.wenzhixin.net.cn/examples/ http://www.jq22.co ...
- OPENQUERY 无行返回 无数据返回 数据缺失
用SQL Server 2008 R2 的 Oracle Provider for OLE DB 链接Oracle . 在SQL Server中使用下面查询语句,没有数据返回 但是再PL/SQL中查找 ...
- 全栈开发必备的10款Sublime Text 插件
Sublime Text 具有漂亮的用户界面和强大的功能,例如代码缩略图,多重选择,快捷命令等.Sublime Text 更妙的是它的可扩展性.所以,这里挑选了全栈开发必备的10款 Sublime T ...
- java日常时间处理
private static String[] parsePatterns = { "yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", & ...
- Spring 4 官方文档学习(十三)集成其他web框架
重点是通用配置,非常建议看一下!有助于理解Spring的ApplicationContext与Servlet Container的关系! 1.介绍 Spring Web Flow SWF目标是成为we ...
- js设置本周 本月 本年
var SetSearchDate = function (sign, sid, eid) {//sign 标识符区分本周本月本年,sid开始时间id,eid结束时间id var now = new ...
- Reveal分析IOS界面,plist文件读取
Reveal分析IOS界面,需要得到app的 softwareVersionBundleId上传到iphone中 , 而IOS8的iTunesMetadata.plist (设备路径/var/mobi ...
- luogu p2330[SCOI05] 繁忙的都市——瓶颈生成树
P2330 05四川 繁忙的都市 题目描述 城市C是一个非常繁忙的大都市,城市中的道路十分的拥挤,于是市长决定对其中的道路进行改造.城市C的道路是这样分布的:城市中有n个交叉路口,有些交叉路口之间有道 ...
- 虚拟机上安装Linux操作系统
很久之前就知道虚拟机这个东西,也都在虚拟机上安装过Windows的操作系统和Linux的操作系统,但是一直都没有去做笔记. 最近还是比较有时间,就移除了前两天刚刚安装的Linux系统,重新安装一次,做 ...