Java基础——时间,时间字符串,时间戳互转

时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。通俗的讲, 时间戳是一份能够表示一份数据在一个特定时间点已经存在的完整的可验证的数据。 它的提出主要是为用户提供一份电子证据, 以证明用户的某些数据的产生时间。 在实际应用上, 它可以使用在包括电子商务、 金融活动的各个方面, 尤其可以用来支撑公开密钥基础设施的 “不可否认” 服务——百度。

public class TimeUtils {
    /**
     * 将时间转换为时间戳
     * @param dateArg
     * @return
     * @throws ParseException
     */
    public static String dateToStamp(Date dateArg){

        //时间戳是距离北京时间1970年01月01日08时00分00秒的总秒数,getTime是获取到的毫秒数
        return dateArg.getTime()/1000;
    }

将时间字符串转换为时间戳就很简单了,先转换成时间就ok了,此处不再赘述。

    /**
     * 将时间戳转换为时间字符串
     * @param dateStr
     * @return
     */
    public static String stampToDate(String dateStr){
        String res;
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

        //注意:时间戳是秒数,需要*1000变成毫秒!!!
        long lt = new Long(dateStr+"000");
        Date date = new Date(lt);
        res = simpleDateFormat.format(date);
        return res;
    }
}

要将Java时间字符串换为时间戳,可以使用以下方法之一。 方式一:使用SimpleDateFormat类将时间字符串解析为Date对象,然后使用Date对象的getTime()方法获取时间戳。 ```java String dateString = "2022-06-01 12:34:56"; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); try { Date date = sdf.parse(dateString); long timestamp = date.getTime(); System.out.println(timestamp); } catch (ParseException e) { e.printStackTrace(); } ``` \[1\] 方式二:使用java.sql.Timestamp类的valueOf()方法将时间字符串换为Timestamp对象,然后使用getTime()方法获取时间戳。 ```java String dateString = "2022-06-01 12:34:56"; java.sql.Timestamp timestamp = java.sql.Timestamp.valueOf(dateString); long timestampValue = timestamp.getTime(); System.out.println(timestampValue); ``` \[3\] 无论使用哪种方式,都需要确保时间字符串的格式与指定的格式相匹配。在上述示例中,时间字符串的格式为"yyyy-MM-dd HH:mm:ss"。如果时间字符串的格式不匹配,将会抛出ParseException异常。 #### 引用[.reference_title] - *1* *2* [Java时间时间戳换](https://blog.csdn.net/qq_35297368/article/details/120162984)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v4^insert_chatgpt"}} ] [.reference_item] - *3* [java中如何把字符串日期时间戳](https://blog.csdn.net/lichongxyz/article/details/125080331)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v4^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ddm01

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值