功能中的错误

时间:2013-03-12 06:45:36

标签: android

我执行函数,遍历行Cursor这些行并尝试添加到数组中,为语句arr_date[i]=String.valueOf(str);获取自定义错误

private String[] logCursor(Cursor c) {
    // TODO Auto-generated method stub
    final String Tag="States";
    String[] arr_date  = new String[] {};

    if (c!=null) {
        if (c.moveToFirst()) {

            String str;
            int i=-1;
            do {

                str="";
                i=i+1;
                for (String cn: c.getColumnNames()) {
                    str = str.concat(c.getString(c.getColumnIndex(cn)));
                }
                Log.d(Tag, str);
                arr_date[i]=String.valueOf(str);
            } while (c.moveToNext());

        }
    }

    return arr_date;

}

1 个答案:

答案 0 :(得分:2)

String[] arr_date  = new String[] {};

您正在分配一个空数组。然后使用

arr_date[i]=String.valueOf(str);

向其写入数据,这会导致异常。 ArrayList最符合您的情况。