2010-04-13 32 views
1

我有一個唱片店,其持有的購物項目目前我正在連載中的數據,像這樣的Java微型版(J2ME) - 從記錄存儲中刪除元素

** (inside) ItemClass **    
ByteArrayOutputStream byteOutputStream = new ByteArrayOutputStream(); 
DataOutputStream dataOutputStream = new DataOutputStream(byteOutputStream); 

dataOutputStream.writeUTF(getOwner()); 
dataOutputStream.writeUTF(getItemName()); 
dataOutputStream.writeInt(getQuantity()); 

dataOutputStream.close(); 

return byteOutputStream.toByteArray(); 

那麼這個字節數組寫入到一個列表記錄存儲像這樣(使用用於環路每個ID)

for (int i = 1; i <= shoppingListStore.getNumRecords(); i++) 
{ 
    byte[] itemRecord = shoppingListStore.getRecord(i); 
    newItemObject.fromByteArray(itemRecord); 
    userShoppingList.append(newItemObject.getItemName() + " " + newItemObject.getQuantity() + " " + newItemObject.getOwner(), null); 
} 

的問題來自於使用ID通過記錄存儲到treverse因爲這可能會從缺失等改變,因此我不斷歌廳被拋出無效的ID。我知道我不能使用對於每個ItemObj:Recordstore,那麼我如何通過唱片商店進行遍歷而不必擔心ID?

回答

2

呼叫recordStore.enumerateRecords(null, null, false)

然後使用RecordEnumeration.hasNextElement()RecordEnumeration.nextRecord()

+0

非常感謝你:) – Garbit 2010-04-13 18:58:32