Java Micro Edition (J2ME) - Datensatz aktualisiert mit Plattenladen Aufzählung
Frage
Ich habe einen Plattenladen von Gegenständen, die haben (Name, Menge, Besitzer, Status)
Nun, wenn der Benutzer löst ein Ereignis aus ich den Status aller Einzelteil in meinem Records setzen will mit „gekauft“
re = shoppingListStore.enumerateRecords(null, null, false);
while (re.hasNextElement())
{
// read current values of item
byte [] itemRecord = re.nextRecord();
// deserialise byte array
newItemObject.fromByteArray(itemRecord);
// set item status to purchased
newItemObject.setItemStatus("Purchased");
// create new bytearray and call newitemobject . tobytearray
// method to return a byte array of the objects
// (using UTF8 encoded strings~)
byte[] itemData = newItemObject.toByteArray();
// add new byte array to shoppinglist store
shoppingListStore.setRecord(re.nextRecordId(), itemData, 0, itemData.length);
}
Allerdings bin ich überschreiben den nächsten Datensatz (mit dem nextRecordId). Ich habe versucht, nextRecordId - 1
verwenden, aber offensichtlich ist dies außerhalb der Grenzen auf dem ersten
Hope Ihnen helfen können?
Lösung
Haben Sie das probiert?
re = shoppingListStore.enumerateRecords(null, null, false);
while (re.hasNextElement())
{
int id = re.nextRecordId();
// read current values of item
byte [] itemRecord = shoppingListStore.getRecord(id);
// deserialise byte array
newItemObject.fromByteArray(itemRecord);
// set item status to purchased
newItemObject.setItemStatus("Purchased");
// create new bytearray and call newitemobject . tobytearray method to return a byte array of the object (using UTF8 encoded strings~)
byte[] itemData = newItemObject.toByteArray();
// update shoppinglist store record with new byte array
shoppingListStore.setRecord(id, itemData, 0, itemData.length);
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow