0

我是 android 的菜鸟,我正在使用一种方法来显示 SQLite 查询。我希望行条目显示为 row#, entryname, qty, amount (1. ferrari 2 $250,000),但它显​​示为 (1. ferrari 2 null$250,000)。我束手无策,因为我不知道为什么我会得到这个讨厌的空值。在我的创建条目或获取数据方法中,没有什么明显的跳出我的地方。任何帮助是极大的赞赏。这是我的代码。

我的创建入口方法:

public long createEntry(String coin, String quantity, String value) {
    // TODO Auto-generated method stub
    ContentValues cv = new ContentValues();
    cv.put(KEY_NAME, coin);
    cv.put(KEY_QUANTITY, quantity);
    cv.put(KEY_VALUE, value);
    return ourDatabase.insert(DATABASE_TABLE, null, cv);
}

我的 getdata 方法(用于在视图中显示):

public String getData() {
    // TODO Auto-generated method stub
    String[] columns = new String[]{ KEY_ROWID, KEY_NAME, KEY_QUANTITY, KEY_VALUE };
    Cursor c = ourDatabase.query(DATABASE_TABLE, columns, null, null, null, null, null);
    String result = "";

    int iRow = c.getColumnIndex(KEY_ROWID);
    int iName = c.getColumnIndex(KEY_NAME);
    int iQuantity = c.getColumnIndex(KEY_QUANTITY);
    int iValue = c.getColumnIndex(KEY_VALUE);

    for (c.moveToFirst(); !c.isAfterLast(); c.moveToNext()){
        result = result + c.getString(iRow) + " " + c.getString(iName) + " " + c.getString(iQuantity) + " " + c.getString(iValue) + "\n";
    }

    return result;
}
4

1 回答 1

0

在我的创建条目或获取数据方法中,没有什么明显的跳出我的地方。

好吧,从您的问题来看,如果您期望的是用空格分隔的 4 个结果,那么在下面...

  1. 法拉利 2 null$250,000

......你显然有这个。如果您的创建/获取方法没问题,那么我首先会怀疑您的数据源是否具有“价值”。

'null' 被附加到值之前,换句话说,它出现在第三个空格之后。仔细查看数据源的编码并确保正确处理它。

于 2012-08-27T02:34:03.083 回答