2012-04-09 6 views
1

Im ein Spiel für Android zu entwickeln, aber ich bemerkte ein Fehler, die ich lösen kann nicht:Wie funktioniert Android C++ fopen fwrite und fclose?

ich das Spiel Fortschritte in eine Datei „X“ speichern die Dateigröße beträgt 288 Byte und das Datum der letzten Änderung nach dem Schließen der Datei Z Danach entferne ich die Batterie und lege sie erneut auf. Als erstes lese ich die Datei und merke, dass die Dateigröße jetzt 0 Byte beträgt und das letzte Änderungsdatum vor Z = s liegt.

Ich weiß wirklich nicht wer meine Datei ändert.

Antwort

1

Haben Sie lange genug gewartet (weiß nicht, wie lange auf Android, mehr als 3 Minuten mindestens), bevor Sie die Batterie entfernen?

Android schreibt Dateien nur einmal alle x Sekunden in den Flash. Wenn Sie sicherstellen möchten, dass Ihre Daten tatsächlich in den Flash geschrieben werden, verwenden Sie den Befehl 'fsync'.