在使用android的sqlist时,出现了以下错误

android.database.CursorIndexOutOfBoundsException: Index 14 requested, with a size of 14

经过排除,确定了错误位置

错误代码为

publicArrayList<receiveContext>query(Stringtable_name,String[]arg){SQLiteDatabasedb=getWritableDatabase();Cursorc=db.query(table_name,null,poster+"=?",arg,null,null,updateTime,null);//查询并获得游标ArrayList<receiveContext>l=newArrayList<receiveContext>();if(c.moveToFirst()){//判断游标是否为空for(inti=0;i<c.getCount();i++){c.moveToPosition(i);//正确语句//c.move(i);//错误语句StringgetContext="";intgetStyle=0;StringgetTime="";getContext=c.getString(c.getColumnIndex(context));getStyle=c.getInt(c.getColumnIndex(style));getTime=c.getString(c.getColumnIndex(updateTime));receiveContextrc=newreceiveContext(getContext,getStyle,getTime);l.add(rc);}}c.close();db.close();returnl;}

这是我写的一个数据库查询的方法,越界原因是使用了方法c.move(i);这个方法我估计(有待考证)应该是当前指针+i,所以会导致越界。正确的方法应该是

c.moveToPosition(i);

这是跳到第i个位置。

更多相关文章

  1. 浅谈Java中Collections.sort对List排序的两种方法
  2. Python list sort方法的具体使用
  3. python list.sort()根据多个关键字排序的方法实现
  4. Android常用的工具类
  5. android Webview基本配置以及android与js交互
  6. android取得账户(邮件地址)
  7. Android中添加布局和初始化布局总结
  8. Android小技巧&Android(安卓)Studio快捷键(不定时更新)
  9. android adb 启动各种应用

随机推荐

  1. activity的android:name类名的简写方式
  2. 从头到尾给你讲明白Android(安卓)View实
  3. Android解析ClassLoader(二)Android中的Cla
  4. 【Android 开发】: Android 消息处理机制
  5. Android的NDK开发步骤
  6. Android音乐播放器汇总贴
  7. Android 去掉 Launcher3 里面默认的Googl
  8. android:id="@+id/android:empty属性的用
  9. android 电池(三):android电池系统
  10. Android xmlns 的作用及其自定义