Sqlite返回手机号码,不带0

时间:2016-01-08 10:13:07

标签: android sqlite

我正在使用带有四个字段的SQLite DB表。我输入的移动电话号码从0开始(例如:09987654321)。我已将手机号码存储为String值。当我试图检索它返回的值没有0(如9987654321)。

我使用过DBHelper类。

CREATE TABLE IF NOT EXISTS Application_Status (Applicant_Name TEXT NOT NULL,DateOfBirth TEXT NOT NULL,MobileNumber TEXT NOT NULL,Status TEXT NOT NULL DEFAULT Pending,App_ID TEXT);

插入:

public long insert(String tablename, String[] column, String[] values) {
    ContentValues cv = new ContentValues();
    for (int i = 0; i < column.length; i++) {
        cv.put(column[i], values[i]);
    }
    return db.insert(tablename, null, cv);
}

对于复原:

public Cursor Search(String tablename, String[] columns, String selectarg,
        String[] selectvalues, String groupby, String having, String orderby) {
    Cursor c = db.query(tablename, columns, selectarg, selectvalues,
            groupby, having, orderby);
    return c;
}

我已将String检索为

DatabaseUtil dba=new DatabaseUtil(context);
Cursor cursor=dba.Search(DatabaseUtil.TABLE_STATUS, null, null, null, null, null, null);
if(cursor.getCount>0)
{
c.moveToFirst();
String mob=cursor.getString(cursor.getColumnIndex(DatabaseUtil.APPST_Mobileno));
...
}

&#39; APPST_Mobileno&#39; - 是DatabaseUtil类中的tablename引用。

我检查了表格,并且正确插入了0的值。为什么在检索时不返回0?

我已更新了我的代码。

先谢谢。

1 个答案:

答案 0 :(得分:0)

返回的任何数字都可以用零填充:

String mob=cursor.getString(cursor.getColumnIndex("Mobileno"));
mob = String.format("%011d", Integer.parseInt(mob));