Удалить запись из RecordStore
Я хочу удалять одну запись из RecordStore каждый раз, когда я использую этот код, то есть второй раз, когда пользователь видит записи, он не должен видеть удаленную запись, но этого не происходит.
После тестирования моего кода такие же записи на recordStore основаны.!!!
Это записи, которые я ввел.
_1_Elhadi__Sun 26 января 01:00:00 GMT+03:00 2014
_A_John_вс 26 января 01:00:00 GMT+03:00 2014
_3_Smith_Вс 26 января 01:00:00 GMT+03:00 2014
public void deleteRecStore(String recID) {
try
{
recordStore.openRecordStore("recordStore", true) ;
}
catch(Exception ex)
{
ex.printStackTrace();
}
try
{
RecordEnumeration e = recordStore.enumerateRecords(null,null,false);
int found = -1;
while (e.hasNextElement())
{
int id = e.nextRecordId();
String next = new String(e.toString());
int fee = next.indexOf("_", 1);
**// These statements don't print anything**
System.out.print("next.indexOf" +next.indexOf("_", 1));
System.out.println( "next.substring(1, fee)"+"\t" +next.substring(fee, 1));
System.out.println("recID"+"\t"+recID);
if (next.substring(1, fee).equals(recID))
{
found = id ;
}
}
if (found == -1)
{
System.out.println("not found!");
}
else
{
recordStore.deleteRecord(found);
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
1 ответ
Я думаю, что ошибка в этой строке:
String next = new String(e.toString());
Похоже, вы конвертируете свой объект RecordEnumeration в объект String и пытаетесь найти идентификатор записи в этой строке. Это не даст вам далеко.
Попробуйте заменить эту строку этой строкой и посмотрите, поможет ли это:
String next = new String(recordStore.getRecord(id));