首页 > 解决方案 > 获取格式错误的firebase ServerValue.TimeSTAMP,如何转换为日期?

问题描述

我想获取 Firebase 服务器的当前时间,我搜索了 stackoverflow,我找到了方法ServerValue.TIMESTAMP,它在我调试时返回值

.sv=时间戳

我在字符串之上,但不知道如何将它转换为日期。我也尝试在hashmap中获取它,有人可以帮忙吗?

注意:我没有在 firebase 中存储日期。

database.child("subscribers").addValueEventListener(new ValueEventListener() {
                @Override
                public void onDataChange(DataSnapshot dataSnapshot) {
                    List notes = new ArrayList<>();
                    for (DataSnapshot noteDataSnapshot : dataSnapshot.getChildren()) {
                    String time = String.valueOf(ServerValue.TIMESTAMP);
           }
                }
            }

            @Override
            public void onCancelled(DatabaseError databaseError) {

            }
        });

标签: javaandroidfirebasefirebase-realtime-database

解决方案


此伪代码可以帮助您如何将时间戳添加到 firebase 并从 firebase 获取:

ref=FirebaseDatabase.getInstance().getReference().child("timeAdded");
// you can set TimeStamp to this reference like this

String timeAddedLong=ServerValue.TIMESTAMP.toString;

ref.setValue(timeAddedLong);


// get previous time added

ValueEventListner listner=ValueEventListner() {

public onDataChanged(DataSnap snap) {
    if(snap.value!=null) {
     long timeadded=parseToLong(snap.value.tostring)

     }
  ref.removeValueEventListner(this)
 }
}
ref.addValueEventListner(listner);

推荐阅读