我有这个代码。基本上这会返回没有城镇品质的正确数据。当我添加城镇品质时,该方法什么都不返回,甚至连原始数据都没有,我不知道为什么。任何人都可以看到问题吗?
protected void listRecords() {
mListForm.deleteAll(); // clear the form
try {
RecordStore rs = RecordStore.openRecordStore("Details", true);
RecordEnumeration re = rs.enumerateRecords(null, new RecordSorter(), false);
while (re.hasNextElement()) {
byte [] recordBuffer = re.nextRecord();
String record = new String(recordBuffer);
// extract the name and the age from the record
int endOfName = record.indexOf(";");
int endOfDesc = record.indexOf(";" , endOfName + 1);
int endOfTown = record.indexOf (";", endOfDesc + 1);
String name = record.substring(0, endOfName);
String desc = record.substring(endOfName + 1, endOfDesc);
String town = record.substring(endOfDesc +1, endOfTown);
mListForm.append(name + " aged: "+ desc + " " + town);
}
rs.closeRecordStore();
}
catch(Exception e){
mAlertConfirmDetailsSaved.setString("Couldn't read details");
System.err.println("Error accessing database");
}
mDisplay.setCurrent(mListForm);
}
答案 0 :(得分:0)
您是否尝试在调试器中运行它?异常发生了吗?记录中是否有三个分号? mDisplay的字符串大小是否有限制?调用setCurrent时,mListForm是否正确?
换句话说,到目前为止你做了什么,它绝对正确,哪里出错?