java long to date_java Data、String、Long三种日期类型之间的相互转换

// date类型转换为String类型

// formatType格式为yyyy-MM-dd HH:mm:ss//yyyy年MM月dd日 HH时mm分ss秒

// data Date类型的时间

public static String dateToString(Date data, String formatType) {

return new SimpleDateFormat(formatType).format(data);

}

// long类型转换为String类型

// currentTime要转换的long类型的时间

// formatType要转换的string类型的时间格式

public static String longToString(long currentTime, String formatType)

throws ParseException {

Date date = longToDate(currentTime, formatType); // long类型转成Date类型

String strTime = dateToString(date, formatType); // date类型转成String

return strTime;

}

// string类型转换为date类型

// strTime要转换的string类型的时间,formatType要转换的格式yyyy-MM-dd HH:mm:ss//yyyy年MM月dd日

// HH时mm分ss秒,

// strTime的时间格式必须要与formatType的时间格式相同

public static Date stringToDate(String strTime, String formatType)

throws ParseException {

SimpleDateFormat formatter = new SimpleDateFormat(formatType);

Date date = null;

date = formatter.parse(strTime);

return date;

}

// long转换为Date类型

// currentTime要转换的long类型的时间

// formatType要转换的时间格式yyyy-MM-dd HH:mm:ss//yyyy年MM月dd日 HH时mm分ss秒

public static Date longToDate(long currentTime, String formatType)

throws ParseException {

Date dateOld = new Date(currentTime); // 根据long类型的毫秒数生命一个date类型的时间

String sDateTime = dateToString(dateOld, formatType); // 把date类型的时间转换为string

Date date = stringToDate(sDateTime, formatType); // 把String类型转换为Date类型

return date;

}

// string类型转换为long类型

// strTime要转换的String类型的时间

// formatType时间格式

// strTime的时间格式和formatType的时间格式必须相同

public static long stringToLong(String strTime, String formatType)

throws ParseException {

Date date = stringToDate(strTime, formatType); // String类型转成date类型

if (date == null) {

return 0;

} else {

long currentTime = dateToLong(date); // date类型转成long类型

return currentTime;

}

}

// date类型转换为long类型

// date要转换的date类型的时间

public static long dateToLong(Date date) {

return date.getTime();

}

转载:http://www.blogjava.net/weishuangshuang/archive/2012/09/27/388712.html

可以使用`java.time.Duration`类来计算两个日期之间的时间差。以下是一个示例代码: ```java import java.time.Duration; import java.time.LocalDate; import java.time.temporal.ChronoUnit; public class DateDifferenceExample { public static void main(String[] args) { // 创建两个日期 LocalDate date1 = LocalDate.of(2021, 1, 1); LocalDate date2 = LocalDate.of(2021, 3, 31); // 计算日期之间的天数差 long daysDiff = ChronoUnit.DAYS.between(date1, date2); System.out.println("Days Difference: " + daysDiff); // 计算日期之间的月数差 long monthsDiff = ChronoUnit.MONTHS.between(date1, date2); System.out.println("Months Difference: " + monthsDiff); // 计算日期之间的年数差 long yearsDiff = ChronoUnit.YEARS.between(date1, date2); System.out.println("Years Difference: " + yearsDiff); // 计算日期之间的小时差 Duration duration = Duration.between(date1.atStartOfDay(), date2.atStartOfDay()); long hoursDiff = duration.toHours(); System.out.println("Hours Difference: " + hoursDiff); // 计算日期之间的分钟差 long minutesDiff = duration.toMinutes(); System.out.println("Minutes Difference: " + minutesDiff); } } ``` 输出: ``` Days Difference: 89 Months Difference: 2 Years Difference: 0 Hours Difference: 2136 Minutes Difference: 128160 ``` 在这个示例中,我们创建了两个`LocalDate`对象表示2021年1月1日和2021年3月31日。然后,我们使用`ChronoUnit`类计算了日期之间的天数差、月数差和年数差。我们还使用`Duration`类计算了日期之间的小时差和分钟差。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值