版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
在开发的过程中,如果遇到时间的问题。那么不得不进行时间之间相互的转换,那么下面我将教给大家一些相应的转换的示例。给大家做出相应的参考,避免大家走些没必要的弯路。。。
String与Date(SimpleDateFormat定义形式也是String)
/**
* 格式化当前日期
* 将日期转换为String类型的字符串
* @param date
* @return
*/
public static String dataFormat(Date date) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String result = format.format(date);
return result;
}
/**
* 将String类型的字符串转换为日期格式
* @param date
* @return
* @throws ParseException
*/
public static Date dataFormatt(String date) throws ParseException {
SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd");
Date result=format.parse(date);
return result;
}
String类型日期与时间戳
/* //日期转换为时间戳
* @param yyyy/MM/dd yyyy-MM-dd 随意定义
* */
public static long timeToStamp(String timers) {
Date d = new Date();
long timeStemp = 0;
try {
SimpleDateFormat sf = new SimpleDateFormat("yyyy/MM/dd");
d = sf.parse(timers);// 日期转换为时间戳
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
timeStemp = d.getTime();
return timeStemp;
}
/* //时间戳转换成String日期 */
public static String stampToTime(long stamp) {
String sd = "";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
sd = sdf.format(new Date(stamp)); // 时间戳转换日期
return sd;
}
String类型日期延迟
//往后推迟一个月
public static String month(String time) {
Calendar c = Calendar.getInstance();//获得一个日历的实例
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
Date date = null;
try{
date = sdf.parse(time);//初始日期
}catch(Exception e){
}
c.setTime(date);//设置日历时间
c.add(Calendar.MONTH,1);//在日历的月份上增加一个月
String strDate = sdf.format(c.getTime());//的到你想要得1个月后的日期
return strDate;
}
//往后推迟一年
public static String year(String time) {
Calendar c = Calendar.getInstance();//获得一个日历的实例
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
Date date = null;
try{
date = sdf.parse(time);//初始日期
}catch(Exception e){
}
c.setTime(date);//设置日历时间
c.add(Calendar.MONTH,12);//在日历的月份上增加12个月
String strDate = sdf.format(c.getTime());//的到你想要得12个月后的日期
return strDate;
}
//往后推迟一天
public static String getNextDay(String day) throws ParseException {
SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
Calendar calendar = Calendar.getInstance();
Date d = format.parse(day);
calendar.setTime(d);
calendar.add(Calendar.DAY_OF_YEAR,1);
return format.format(calendar.getTime());
}
//较麻烦
public static String getLastDay(String time){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar = Calendar.getInstance();
Date date=null;
try {
date = sdf.parse(time);
} catch (ParseException e) {
e.printStackTrace();
}
calendar.setTime(date);
int day=calendar.get(Calendar.DATE);
// 此处修改为+1则是获取后一天
calendar.set(Calendar.DATE,day-1);
String lastDay = sdf.format(calendar.getTime());
return lastDay;
}
//教简单
DateFormat dft = new SimpleDateFormat("yyyy-MM-dd");
try {
Date temp = dft.parse("传入的日期字符串");
Calendar cld = Calendar.getInstance();
cld.setTime(temp);
cld.add(Calendar.DATE, 1);
temp = cld.getTime();
//获得下一天日期字符串
String nextDay = dft.format(temp);
} catch (ParseException e) {
e.printStackTrace();
}