根据日期获取,x岁x月x天
c#:
DateTime startDate = new DateTime();
DateTime endDate = new DateTime(); int age =;
int month = ;
int day = ; if (endDate.Month>startDate.Month)
{
age = endDate.Year - startDate.Year;
month = endDate.Month - startDate.Month;
}
else
{
age = endDate.Year - startDate.Year-;
month =+ endDate.Month - startDate.Month;
} if (endDate.Day>startDate.Day)
{
day = endDate.Day - startDate.Day;
}
else
{
//上个月天数-startDate.Day+endDate.Day
day = (endDate-endDate.AddMonths(-)).Days - startDate.Day+endDate.Day;
month--;
}
Response.Write(string.Format("{0}岁{1}月{2}天", age, month, day));
php:
$age=0;
$month=0;
$day=0; $startDate=strtotime("2010-09-08 07:06:05");
$endDate=strtotime("2015-06-05 07:06:05");
if(date('n',$endDate)>date('n',$startDate)){
$age=date('Y',$endDate)-date('Y',$startDate);
$month=date('n',$endDate)-date('n',$startDate);
}else{
$age=date('Y',$endDate)-date('Y',$startDate)-1;
$month=12+date('n',$endDate)-date('n',$startDate);
} if(date('j',$endDate)>date('j',$startDate)){
$day = date('j',$endDate)-date('j',$startDate);
}else{
$day= date('t',strtotime('-1 Month',$endDate))-date('j',$startDate)+date('j',$endDate);
$month--;
}
echo sprintf('%s岁%s月%s天',$age,$month,$day);
java:
Calendar startDate = Calendar.getInstance();
startDate.setTime(new SimpleDateFormat("yyyy-MM-dd").parse("2010-09-08")); Calendar endDate = Calendar.getInstance();
endDate.setTime(new SimpleDateFormat("yyyy-MM-dd").parse("2010-10-5")); int age =0;
int month = 0;
int day = 0;
if(endDate.get(Calendar.MONTH)>startDate.get(Calendar.MONTH)){
age = endDate.get(Calendar.YEAR) - startDate.get(Calendar.YEAR);
month = endDate.get(Calendar.MONTH)-startDate.get(Calendar.MONTH);
}else{
age = endDate.get(Calendar.YEAR) - startDate.get(Calendar.YEAR)-1;
month =12+ endDate.get(Calendar.MONTH)-startDate.get(Calendar.MONTH);
} if(endDate.get(Calendar.DAY_OF_MONTH)>startDate.get(Calendar.DAY_OF_MONTH)){
day = endDate.get(Calendar.DAY_OF_MONTH)-startDate.get(Calendar.DAY_OF_MONTH);
}else{
Calendar preEndDate = Calendar.getInstance();
preEndDate.set(Calendar.YEAR, endDate.get(Calendar.YEAR));
preEndDate.set(Calendar.MONTH, endDate.get(Calendar.MONTH)-1);
preEndDate.set(Calendar.DATE, 1);
preEndDate.roll(Calendar.DATE, -1);
int preMonthDays = preEndDate.get(Calendar.DATE); //获取endDay 上个月的天数 day =preMonthDays+endDate.get(Calendar.DAY_OF_MONTH)-startDate.get(Calendar.DAY_OF_MONTH);
month--;
} System.out.printf("%s岁%s月%s天",age,month,day);
根据日期获取,x岁x月x天的更多相关文章
- 根据日期字符串获取星期几,日期获取星期,时间获取星期,js获取星期
根据日期字符串获取星期几,日期获取星期,时间获取星期,js获取星期 >>>>>>>>>>>>>>>>&g ...
- Java日期获取需求大全
刚进公司,作为熟悉技术,为公司做了一个小的点餐系统的网站,其中大量用到了时间日期作为唯一标示或是显示设置.特总结了一下和大家分享. package com.lucis.ordering.Utils; ...
- Python:如何用一行代码获取上个月是几月
现在转一篇志军100发于公众号 Python之禅的文章: Python:如何用一行代码获取上个月是几月 抱歉我用了个有点标题党的标题,因为担心你错过了本文,但内容绝对干货,本文介绍的关于Python时 ...
- Oracle获取当前年、月、日的方法
Oracle获取当前年.月.日的方法 Oracle 获取当前年.月.日 1.//oracle中extract()函数从oracle 9i中引入,用于从一个date或者interval类型中截取到特定的 ...
- 微信小程序——获取当天的前一个月至后一个月
看标题也不知道你有没有明白我想表达的意思,先上个动态图吧~ 需要分析: 1.获取当前日期的前一个月,后一个月和当月.比如说现在是7月5号,我需要得到6月5号至8月5号的日期,同时还要返回当前的星期. ...
- C# DATETIME格式转换汇总 根据日期获取星期
原文:C# DATETIME格式转换汇总 根据日期获取星期 C# DateTime.Now.Year --2019(年) DateTime.Now.Month --9(月) DateTime.Now. ...
- Javascript获取最近若干个月
整理: 如果需要获取最近若干个月,牵扯到跨年的话,该怎么实现的问题,抽了点时间,代码如下: /**纪元时间获取最近12个月 * * @num 传入获取月的数目 **/ (function getMon ...
- php 日期 - 获取当月最后一天
/** * 日期-获取当月最后一天 * @return int */ public function get_lastday() { if($this->month==2) { $lastday ...
- php获取前一天,前一个月,前一年的时间
获取前一天的时间: $mytime= date("Y-m-d H:i:s", strtotime("-1 day")); 获取三天前的时间: $mytime= ...
随机推荐
- Django学习案例一(blog):六. 开发博客内容页面
目标:某条博客具体内容的展示,可返回博客主页面,可进行评论. 1. 编辑路由 一篇博客,要将其找出来,就需要有一个唯一的标识.Django 的模型中默认有一个唯一的且未自增长的主键,即 id 字段.我 ...
- animation与transition的简单讲述
CSS动画分为两大组成部分:transition和animation 在CSS 3引入Transition(过渡)这个概念之前,CSS是没有时间轴的.也就是说,所有的状态变化,都是即时完成. tran ...
- shiro登陆权限验证
一>引入shirojar包 <!-- shiro登陆权限控制 --> <dependency> <groupId>org. ...
- php数据库分页
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- dubbo介绍及实战
1. dubbo是什么? Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案.其核心部分包含: 远程通讯: 提供对多种基于长连接的NIO框架抽象封 ...
- JDK自带工具
工具名称 描述 appletviewer.exe 用于运行并浏览applet小程序. apt.exe 注解处理工具(Annotation Processing Tool),主要用于注解处理. extc ...
- AI:PR的数学表示-传统方法PR
前言: 接上一篇:AI:模式识别的数学表示 在图像处理PR领域,相对于ANN方法,其他的方法一般称为传统方法.在结构上,几乎所有的PR方法都是可解释的.且任一传统方法,在一定约束下,可以转换为SV近邻 ...
- 数据清理,预处理 pandas dataframe 操作技巧 总结
dsoft2 = data1.loc[(data1['程'] == "轻") | (data1['程'] == "中")]设置x下标plt.xticks(np. ...
- AndroidStudio 内存泄漏的分析过程
前言部分这次泄漏是自己代码写的太随意引起的,讲道理,代码写的太为所欲为了,导致有些问题根本就很难发现. 泄漏产生的原因,由于activity未被回收导致.这里给我们提出的一个警示,在使用上下文的时候, ...
- 玩转python 各种数据类型的转换
# -*- coding: utf-8 -*- # @Time : 2019/4/28 14:27 # @Author : wujf # @Email : 1028540310@qq.com # @F ...