joda 的日常用法

DateTime currentDateTime = new DateTime();
// 今天的零点
DateTime dateTime = currentDateTime.withMillisOfDay(0);
// 昨天的零点
DateTime dateTime = currentDateTime.withMillisOfDay(0).plusDays(-1);
// 明天的零点
DateTime dateTime = currentDateTime.withMillisOfDay(0).plusDays(1);
// 这一年最后一天0点
new DateTime().dayOfYear().withMaximumValue().withMillisOfDay(0)
// 这一年第一天0点
new DateTime().dayOfYear().withMinimumValue().withMillisOfDay(0)
// 这个月最后一天0点
new DateTime().dayOfMonth().withMaximumValue().withMillisOfDay(0)
// 这个月月初0点
new DateTime().dayOfMonth().withMinimumValue().withMillisOfDay(0)
DateTime currentDateTime = new DateTime();
DateTime targetDateTime = new DateTime(2017,10,1,0,0,0);

// 相差多少年
int years = Years.yearsBetween(currentDateTime,targetDateTime).getYears();
// 相差多少月
int months = Months.monthsBetween(currentDateTime,targetDateTime).getMonths();
// 距离国庆放假还有多少天,嘎嘎!
int days = Days.daysBetween(currentDateTime,targetDateTime).getDays();
// 相差多少小时
int hours = Hours.hoursBetween(currentDateTime,targetDateTime).getHours();
// 相差多少分钟
int minutes = Minutes.minutesBetween(currentDateTime,targetDateTime).getMinutes();
// 相差多少秒
int seconds = Seconds.secondsBetween(currentDateTime,targetDateTime).getSeconds();
// 相差多少周
int weeks = Weeks.weeksBetween(currentDateTime,targetDateTime).getWeeks();
org.joda.time.DateTime;

<dependency>
   <groupId>joda-time</groupId>
   <artifactId>joda-time</artifactId>
   <version>2.9.8</version>
</dependency>
1.初始化时间
DateTime time = new DateTime(2018,4,23,23, 7,18,888);
// 2018年4月23日23点7分18秒888毫秒  
2.按格式输出时间(将DateTime格式转换为字符串)
 String time = dateTime.toString("yyyy-MM-dd hh:mm:ss.SSSa");
小写hh是12小时制,大写HH是24小时制

3.将字符串转换为DateTime格式
 DateTimeFormatter format = DateTimeFormat .forPattern("yyyy-MM-dd HH:mm:ss");  
                   
 DateTime dateTime = DateTime.parse("2018-4-23 23:12:16", format); 
4.取得当前时间
DateTime time= new DateTime();
5.计算两个日期间隔的天数
 LocalDate start=new LocalDate(2018,4,23);    
 LocalDate end=new LocalDate(2019, 06, 16);    
 int days = Days.daysBetween(start, end).getDays(); 
6.增加日期
      DateTime dateTime = DateTime.parse("2018-04-23");  
                dateTime = dateTime1.plusDays(1);  
                dateTime = dateTime1.plusHours(2);  
                dateTime = dateTime1.plusMinutes(3);  
                dateTime = dateTime1.plusMonths(4);  
                dateTime = dateTime1.plusSeconds(5);  
                dateTime = dateTime1.plusWeeks(6);  
                dateTime = dateTime1.plusYears(7);  
7.减少日期
  DateTime dateTime = DateTime.parse("2018-04-23");  
                dateTime = dateTime1.minusMillis(1);  
                dateTime = dateTime1.minusHours(1);  
                dateTime = dateTime1.minusSeconds(1);;  
8.判断是否闰月
DateTime time = new DateTime();    
 org.joda.time.DateTime.Property month = time.monthOfYear();    
  System.out.println("是否闰月:" + month.isLeap());  
9.DateTime与Date转换
DateTime time = new DateTime(new Date());    
 Date date = time.toDate();    
 DateTime time2 = new DateTime(System.currentTimeMillis());    
 time2.getMillis();  
10.DateTime与Calendar转换
Calendar calendar = Calendar.getInstance();    
 dateTime = new DateTime(calendar);

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值