moment.js时间差取整并转换为时间戳(个人笔记)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了moment.js时间差取整并转换为时间戳(个人笔记)相关的知识,希望对你有一定的参考价值。

参考技术A 有时后台需要获取完整的开始结束时间来获取某个时间段的数据,但是用户的开始结束并不一定是整数,这时需要进行一些处理。

将纪元时间转换为时间戳颤动

【中文标题】将纪元时间转换为时间戳颤动【英文标题】:Convert epoch time into timestamp flutter 【发布时间】:2021-01-18 18:17:17 【问题描述】:

我有一个纪元格式的日期时间:1633247247

我想将其转换为这样的时间戳:2021 年 10 月 3 日星期日或 2021 年 10 月 3 日

我正在写这段代码

final DateTime timeStamp = DateTime.fromMillisecondsSinceEpoch(1633247247);

但它正在返回 1970-01-19 18:25:11.247

编辑我运行了这段代码

final DateTime timeStamp = DateTime.fromMillisecondsSinceEpoch(1633247247 * 1000);

得到日期时间的输出。我现在正在尝试转换为字符串

String formattedDate = DateFormat('yyyy-MM-dd – kk:mm').format(date);

它给出了这个错误The instance member 'date' can't be accessed in an initializer.

【问题讨论】:

【参考方案1】:

它以毫秒为单位,您需要将它与 1000 相乘,如下所示:

最终日期时间时间戳 = DateTime.fromMillisecondsSinceEpoch(1633247247 * 1000);

【讨论】:

【参考方案2】:

您的时间似乎是“自纪元以来的秒数”,因此只需乘以 1000 即可得出正确的时间。

final DateTime timeStamp = DateTime.fromMillisecondsSinceEpoch(1633247247 * 1000);

【讨论】:

【参考方案3】:

您需要使用日期时间格式。您可以在这里找到解决方案:

https://***.com/a/51579740/11604909

【讨论】:

【参考方案4】:

下载和导入

intl Pacakge

import 'package:intl/intl.dart';

初始化变量

String datetime;

获取当前日期和转换

Future<void> Datetimes() async
  setState(() 
    DateTime now = DateTime.now();
    String formattedDate = DateFormat('EEEE d MMM hh:mm:ss').format(now);
    datetime=formattedDate;
  );

输出

Saturday 3 oct 2:07:29

更多格式参数请参考 DateandTime 类 DateFormat-class

【讨论】:

如何传递我的当前值? 你的意思是格式化的日期,如果是你可以在任何地方访问datetime变量@ajay131 这将返回 null 你有没有在initState()@ajay131中调用Datetimes函数 你下载包并导入了吗,如果完成了,试试这个,Text(datetime.toString()) then run flutter clean 然后再次运行@ajay131

以上是关于moment.js时间差取整并转换为时间戳(个人笔记)的主要内容,如果未能解决你的问题,请参考以下文章

php怎么将指定日期转换为时间戳

如何将日期和时间转换为时间戳

Python时间转换函数:时间转化为时间戳时间戳转化为时间当前日期当前时间星期几前面或者后面多少天年月日等

将纪元转换为时间戳时获取不正确的日期

如何将日期转换为时间戳?

将日期 unix 转换为时间戳