【发布时间】:2023-03-07 01:29:01
【问题描述】:
我正在开发一个 android 应用程序,用于扫描附近的蓝牙设备并获取这些设备的详细信息。详细信息意味着设备名称、设备地址、RSSI 之类的。然后我将这些数据发送到 firebase 实时数据库。下面我提到了我的数据库结构。
我想检索特定的数据集并将这些数据加载到 csv 文件中的表中 这里我已经提到了我是如何获取数据集的
protected void onStart() {
super.onStart();
DatabaseReference reference = FirebaseDatabase.getInstance().getReference("BluetoothDevicesInfo");
reference.orderByChild("deviceId").equalTo("C6:89:AF:D6:7B:83").addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot deviceInf: dataSnapshot.getChildren()){
String deviceId= deviceInf.child("deviceId").getValue().toString();
Map<String, String> value = (Map<String, String>) dataSnapshot.getValue();
Log.i("dataSnapshot", "dataSnapshot : " + new JSONObject(value));
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
输出
{"-M8Bu8znHpC4EAstfPLf":
{"rssi":-92,"distance":1,"deviceId":"C6:89:AF:D6:7B:83","timestamp":"25-05-202023:06:52"},
"-M8Bu8zOuBZjgkkSUcnG":
{"rssi":-92,"distance":1,"deviceId":"C6:89:AF:D6:7B:83","timestamp":"25-05-2020 23:06:52"}}
如何在 CSV 上打印此内容
【问题讨论】:
-
您想要 csv 上的内部对象还是整行?
rssidistancedeviceId和timestamp有对应的值,但“-M8Bu8znHpC4EAstfPLf”没有。 -
是的。我只想要 rssi、距离、id 和时间戳
标签: android json csv firebase-realtime-database opencsv