利用DateFormat、Date、Calendar等类 对含有时间的字符串进行提取和计算
来源:互联网 发布:淘宝 贴吧 编辑:程序博客网 时间:2024/06/05 16:38
在时间提取方面我用了三种方法,最开始使用的是正则表达式,很简洁,
之后使用的是Date类中的方法,但这种方法都已过时,
最后使用的是Calendar类的方法。、
我推荐使用正则表达式,简洁实用;
package cn.hanfeng.example13_6;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example2 {
public static void main(String args[]) throws ParseException{
//Date类中的方法
String time2="2016-04-07 16:35:36";SimpleDateFormat matter2= new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
Date tr2=matter2.parse(time2);
Calendar calendar2 = Calendar.getInstance();
calendar2.setTime(tr2);
System.out.println("年:"+calendar2.get(Calendar.YEAR));
int month=calendar2.get(Calendar.MONTH)+1;
System.out.println("月:"+month);
System.out.println("日:"+calendar2.get(Calendar.DATE));
int hour=calendar2.get(Calendar.HOUR)+12;
System.out.println("时:"+hour);
System.out.println("分:"+calendar2.get(Calendar.MINUTE));
System.out.println("秒:"+calendar2.get(Calendar.SECOND));
//Calendar类的方法
String time3="2016-04-07 16:35:36";
SimpleDateFormat matter3= new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
Date tr3=matter3.parse(time3);
int year=tr3.getYear()+1900;
System.out.println("年:"+year);
int month2=tr3.getMonth()+1;
System.out.println("月:"+month2);
System.out.println("日:"+tr3.getDate());
System.out.println("时:"+tr3.getHours());
System.out.println("分:"+tr3.getMinutes());
System.out.println("秒:"+tr3.getSeconds());
//正则表达式
Pattern p=Pattern.compile("(\\d{4})-(\\d{1,2})-(\\d{1,2})\\s(\\d{1,2}):(\\d{1,2}):(\\d{1,2})");
Matcher m=p.matcher("2016-04-07 16:35:36");
if(m.find()){
System.out.println("日期:"+m.group());
System.out.println("年:"+m.group(1));
System.out.println("月:"+m.group(2));
System.out.println("日:"+m.group(3));
System.out.println("时:"+m.group(4));
System.out.println("分:"+m.group(5));
System.out.println("秒:"+m.group(6));
}
//判断并输出该字符串表示的时间是该年度第几周、第几天。
String time="2016-04-07 16:35:36";
SimpleDateFormat matter= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date tr=matter.parse(time);
Calendar calendar = Calendar.getInstance();
calendar.setFirstDayOfWeek(Calendar.MONDAY);
calendar.setTime(tr);
System.out.println("这是"+calendar.get(Calendar.YEAR)+"中的第"+calendar.get(Calendar.WEEK_OF_YEAR)+"周");
System.out.println("这是"+calendar.get(Calendar.YEAR)+"中的第"+calendar.get(Calendar.DAY_OF_YEAR)+"天");
}
}
阅读全文
0 0
- 利用DateFormat、Date、Calendar等类 对含有时间的字符串进行提取和计算
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(4) DateFormat
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(1) Calendar
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(1) Calendar
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(3) Date
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(5) SimpleDateFormat
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(6) Locale
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(7) TimeZone
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(2) 自己封装的Calendar接口
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(1) Calendar - 跨到对岸去
- java时间类 Date,DateFormat ,Calendar
- java 中操作时间的三个类:Date、Calendar和DateFormat
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(2) 自己封装的Calendar接口 - 跨到对岸去
- Java中的日期/时间类,Date、DateFormat、Calendar类
- Java中的日期/时间类,Date、DateFormat、Calendar类
- Date,DateFormat,Calendar类用法
- Date、Calendar、DateFormat、SimpleDateFormat类
- Java中的时间格式化和时间计算的方法 date calendar类详解~~~perfect
- Android关于Theme.AppCompat相关问题的深入分析
- IOS学习笔记-加速度传感器(重力感应)-UIAccelerometer
- 八种排序java实现
- 继承的那些事:
- jquery源码 DOM加载
- 利用DateFormat、Date、Calendar等类 对含有时间的字符串进行提取和计算
- codeforces Educational Codeforces Round 21 B. Average Sleep Time
- springmvc整合redis
- 算法导论读书笔记(10)基本数据结构
- Sqoop的使用
- 用jQuery实现Ajax
- out of memory
- mqd-mount一个分区,并在/etc/fstab写入了挂载信息,后卸载并删除硬盘,导致无法开机
- 5.16