androidarraysdatabasesqliteandroid-cursor

How do i get data from an SQLITE database to an array in android?


Pretty sure this is an easy one, but i'm getting confused by all the examples that adapt the data returned from a cursor into different views. I just want to run a rawquery and put each item of data returned into a float array (so that i can add them up later). What do i need to use for this? Thanks


Solution

  • You'll still have a cursor when you query your database, but once you got the cursor you could iterate over it, pulling out the values you need into an array, like this:

    DbAdapter db = new DbAdapter(mContext);
        int columnIndex = 3; // Whichever column your float is in.
        db.open();
        Cursor cursor = db.getAllMyFloats();
        float[] myFloats = new float[cursor.getCount()-1];
    
        if (cursor.moveToFirst())
        {                       
            for (int i = 0; i < cursor.getCount(); i++)
            {
                myFloats[i] = cursor.getFloat(columnIndex);
                cursor.moveToNext();
            }           
        }
        cursor.close();
        db.close();
    
        // Do what you want with myFloats[].