我的时间戳在Flatter Firestore快照中返回<code>时间戳(秒=1560523991,纳秒=286000000)。
我想把它打印成格式正确的日期和时间。
我正在使用DateTime.now()
将当前DateTime存储在Firestore中,同时创建新记录并使用Firestore快照检索它,但我无法转换为格式化的日期时间。我正在使用lib intl.dart
进行格式化。
保存数据的代码
d={'amount':amount,
'desc':desc,
'user_id':user_id,
'flie_ref':url.toString(),
'date':'${user_id}${DateTime.now().day}-${DateTime.now().month}-${DateTime.now().year}',
'timestamp':DateTime.now()
return Firestore.instance.collection('/data').add(d).then((v){return true;
}).catchError((onError)=>print(onError));
});
Accessing with
FutureBuilder(
future: Firestore.instance
.collection('data')
.where('user_id', isEqualTo:_user_id)
.getDocuments(),
builder: (BuildContext context,
AsyncSnapshot<QuerySnapshot> snapshot) {
if (!snapshot.hasData)
return Container(
child: Center(child: CircularProgressIndicator()));
return ListView.builder(
itemCount: snapshot.data.documents.length,
itemBuilder: (BuildContext context, int index) {
return Column(
children: <Widget>[
Text(DateFormat.yMMMd().add_jm().format(DateTime.parse(snapshot.data.documents[index].data['timestamp'].toString())]);
....
抛出的错误是
日期格式无效。
我希望输出是:<code>‘2019年1月17日下午2:19‘
您可以直接将 Firestore 时间戳对象转换为 DateTime,如下所示:
DateTime myDateTime = (snapshot.data.documents[index].data['timestamp']).toDate();
这将以dart的DateTime格式返回您的FiRecovery时间戳。为了转换您的DateTime
对象,您可以使用intl包中的DateFormat
类。您可以使用获得的DateTime对象来获取您选择的格式,如下所示:
DateFormat.yMMMd().add_jm().format(myDateTime);
此代码生成如下输出:
Apr 21, 2020 5:33 PM
这是方式!
Firestore将返回类似时间戳的时间戳(秒=1560523991,纳秒=286000000)。
这可以被解析为
Timestamp t = document['timeFieldName'];
DateTime d = t.toDate();
print(d.toString()); //2019-12-28 18:48:48.364
当我们将DateTime对象推送到Firestore时,它会在内部将其转换为自己的时间戳对象并存储。
从 Firestore 获取时间戳后将其转换回日期时间的方法:
FiRecovery的时间戳包含一个名为toDate()的方法,可以将其转换为String,然后可以将该String传递给DateTime的解析方法以转换回DateTime
DateTime.parse(timestamp.toDate().toString())
问题内容: 我有,我需要将其转换为应匹配此模式的类型对象-“ 2016-11-16T18:42:33.049Z”。我怎样才能做到这一点? 问题答案: Date d = new Date((long)timestamp*1000); 将创建一个实例。稍后显示它是另一回事。 我认为这就是您想要的: 测试:
我已经尝试从firebase时间戳中获取日期和时间,如下所示: 但我得到的结果是:
问题内容: 使用PHP,我想将UNIX时间戳转换为类似于以下内容的日期字符串: 如何转换的时间戳,如到? 问题答案: 尝试这样:
本文向大家介绍vue.js将时间戳转化为日期格式的实现代码,包括了vue.js将时间戳转化为日期格式的实现代码的使用技巧和注意事项,需要的朋友参考一下 看看下面的代码吧,具体代码如下所示: 把上面代码保存为date.js放到你的公共js文件夹中。 在你的需要格式化时间戳的组件里像下面这样使用: 总结 以上所述是小编给大家介绍的vue.js将时间戳转化为日期格式的实现代码,希望对大家有所帮助,如果
我有一个方法可以生成一个随机的日期和时间。 打印输出类似于 我见过几个这样的问题和页面,但他们没有给我一个线索。
问题内容: 我有一个日期保存在Firestore字段中作为时间戳,我想将其转换为Swift中的日期: 我尝试了以下操作,但出现错误: 错误: 我想转换为Date的原因是为了可以使用此Date扩展名模仿您在Instagram帖子上看到的时间戳: 问题答案: 可以这样做: 或者你可以这样做: 请参阅时间戳参考文档。