时间戳转换为Date

本章主要讲解的是,因为数据库储存时间是以int(11)的形式去储存,后期获取之后转化成DATE形式老是与正确时间对不上。

 

1、获取当前时间的时间戳

//除以1000为了获取精确到秒的时间戳,不除以1000得到毫秒的时间戳

String timestamp = String.valueOf(new Date().getTime() / 1000);
return Integer.valueOf(timestamp);

2、将精确到秒的时间戳转换成Date

SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//一般网上的转换是没有中间new Long(timeStamp),因为他们都是精确到毫秒的时间戳,不用再乘以1000进行转换
long longTimeStamp = new Long(new Long(timeStamp) * 1000);
Date date = new Date(longTimeStamp);
String dareString = simpleDateFormat.format(date);
return dareString;

 

 

### ArkTS 中时间戳转换为日期的方法 在 ArkTS 开发环境中,为了实现从时间戳到可读日期格式的转换,推荐使用 `dayjs` 这一强大的时间处理库[^2]。下面展示如何利用此工具完成所需功能。 #### 使用 dayjs 实现时间戳转日期 首先,在项目中引入 `dayjs` 库: ```javascript import dayjs from 'dayjs'; ``` 接着定义一个函数用于执行实际的时间戳至日期字符串的转换操作: ```typescript function timestampToDate(timestamp: number): string { const formattedDate = dayjs.unix(timestamp).format('YYYY-MM-DD HH:mm:ss'); return formattedDate; } ``` 上述代码片段展示了通过调用 `unix()` 方法将 Unix 时间戳解析成 `Day.js` 对象实例,随后借助 `format()` 函数定制输出样式为年月日时分秒的形式。 对于特定场景下的需求调整,比如仅需获取不含秒数的信息,则只需修改传递给 `format()` 的模板串即可满足不同业务逻辑的要求。 考虑到某些情况下可能直接接收到的是毫秒级精度的时间戳而非标准 UNIX 秒级别数值的情况,此时应先除以一千再传入 `unix()` 方法内做进一步处理: ```typescript function millisecondTimestampToDate(millisecondTimestamp: number): string { const secondsSinceEpoch = Math.floor(millisecondTimestamp / 1000); const formattedDate = dayjs.unix(secondsSinceEpoch).format('YYYY-MM-DD HH:mm:ss'); return formattedDate; } ``` 此外,如果希望每秒钟更新一次显示的时间信息,可以通过如下方式设置定时器来周期性地触发视图重绘过程[^3]: ```javascript setInterval(() => { currentTime1 = new Date().getTime(); // 获取当前时间对应的毫秒级时间戳 timeTrans(currentTime1); // 执行自定义的时间转换并渲染界面 }, 1000); ``` 值得注意的是,当涉及到 UI 组件交互特别是像 `TimePicker` 控件的选择行为同步时,应当注意其属性配置选项中的 `selectedDate` 字段支持双向数据绑定特性,这有助于简化开发者编写事件监听回调以及状态管理方面的复杂度[^4]。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值