##今天写一个调用同事的接口,但是我要保证其中一个日期格式的时分秒必须为零。也就是传进来的数据必须为yyyy-MM-dd HH-mm-ss
##原本以为用SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH-00-00"),结果报错..说明java不支持这样写。
因为传进来的数据是String,所以要先转成Date,再使用Calendar设置数据,再转成String.
直接上代码:
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date startTimee=sdf.parse(startTime);
Date endTimee=sdf.parse(endTime);
Calendar cal=Calendar.getInstance();
cal.setTime(startTimee);
cal.set(Calendar.MINUTE,0);
cal.set(Calendar.SECOND, 0);
String startTime1=sdf.format(cal.getTime());
cal.setTime(endTimee);
cal.set(Calendar.MINUTE,0);
cal.set(Calendar.SECOND, 0);
String endTime1=sdf.format(cal.getTime());
无论是Date转String,还是String转Date,都必须先有SimpleDateFormat。
1.Date转String:
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//根据自己情况
Date date=new Date();//创建一个当前时间的Date
String dd=sdf.format(date); //Date转String
2.String转Date:
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//根据自己情况
String date="2019-07-26 15:21:00";
Date dd=sdf.parse(date); //String转Date
3.使用Calendar设置Date数值:
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//根据自己情况
Date date=new Date();
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.set(Calendar.MINUTE,0); //分
cal.set(Calendar.SECOND, 0); //秒