Ich schreibe in die CSV-Datei die BLE gescannten Ergebnisse. Was ich gerade mache, schreibt alle Daten untereinander. Die Daten bestehen aus Gerätename, rssi und MAC-Adresse. Zum Beispiel sieht die CSV-Datei wie folgt -CSV Schreiben von Daten nebeneinander
DeviceA -85 DS:DA:AB:2B:B4:AE
DeviceB -100 2C:18:0B:2B:96:9E
DeviceA -85 DS:DA:AB:2B:B4:AE
Meine requireemnt so zu schreiben sind -
DeviceA -85 DS:DA:AB:2B:B4:AE DeviceB -100 2C:18:0B:2B:96:9E
DeviceA -85 DS:DA:AB:2B:B4:AE
Nach der letzten Spalte der Vorrichtung A, ich brauche neue Spalte von Gerät B starten statt unter Gerät A zu schreiben. Auch für Gerät C möchte ich es neben Gerät C schreiben ... Und so weiter. Hier ist mein Code zum Schreiben in CSV.
public final String DATA_SEPARATOR = ",";
public final String LINE_SEPARATOR = System
.getProperty("line.separator");
try {
fileName = "test.csv";
path = Environment.getExternalStorageDirectory()
+ File.separator + "Documents";
path += File.separatorChar + "SampleApp";
File file = new File(path, fileName);
new File(path).mkdirs();
file.createNewFile();
fileStream = new OutputStreamWriter(new FileOutputStream(file));
fileStream.write("sep= " + DATA_SEPARATOR + LINE_SEPARATOR);
} catch (IOException e) {
e.printStackTrace();
fileStream = null;
}
private void writeElements(Object... elements) throws IOException {
if (fileStream != null) {
for (Object o : elements) {
fileStream.write(o.toString());
fileStream.write(DATA_SEPARATOR);
}
fileStream.write(LINE_SEPARATOR);
}
}
writeElements(btDeviceName, btRSSIValue, btMacId)
wird jeder nun von bluetoothScan()
Methode aufgerufen und dann.
Wie kann ich nebenbei schreiben erreichen?
scheint nicht zu funktionieren :( – Del905241
Versuchen Sie es erneut, bearbeitet –
. Und noch einmal bearbeitet.Probieren Sie es noch einmal. –