本文整理匯總了Java中android.database.Cursor.FIELD_TYPE_NULL屬性的典型用法代碼示例。如果您正苦於以下問題:Java Cursor.FIELD_TYPE_NULL屬性的具體用法?Java Cursor.FIELD_TYPE_NULL怎麽用?Java Cursor.FIELD_TYPE_NULL使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在類android.database.Cursor
的用法示例。
在下文中一共展示了Cursor.FIELD_TYPE_NULL屬性的11個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: getObject
static Object getObject(Cursor cursor, int columnIndex) throws Exception
{
int type = getType(cursor, columnIndex);
Object value;
switch (type)
{
case Cursor.FIELD_TYPE_BLOB:
value = cursor.getBlob(columnIndex);
break;
case Cursor.FIELD_TYPE_FLOAT:
value = cursor.getFloat(columnIndex);
break;
case Cursor.FIELD_TYPE_INTEGER:
value = cursor.getLong(columnIndex);
break;
case Cursor.FIELD_TYPE_NULL:
value = null;
break;
case Cursor.FIELD_TYPE_STRING:
value = cursor.getString(columnIndex);
break;
default:
value = cursor.getString(columnIndex);
}
return value;
}
示例2: ListRow
public ListRow(OModel model, Cursor cursor) {
this.baseModel = model;
for (String column : cursor.getColumnNames()) {
int index = cursor.getColumnIndex(column);
switch (cursor.getType(index)) {
case Cursor.FIELD_TYPE_INTEGER:
put(column, cursor.getInt(index));
break;
case Cursor.FIELD_TYPE_BLOB:
put(column, cursor.getBlob(index));
break;
case Cursor.FIELD_TYPE_STRING:
put(column, cursor.getString(index));
break;
case Cursor.FIELD_TYPE_FLOAT:
put(column, cursor.getFloat(index));
break;
case Cursor.FIELD_TYPE_NULL:
put(column, false);
break;
}
}
}
示例3: _dumpColumns
private void _dumpColumns(Cursor cursor, String msg) {
String[] columns = new String[cursor.getColumnCount()];
for (int i = 0; i < cursor.getColumnCount(); i++)
switch (cursor.getType(i)) {
case Cursor.FIELD_TYPE_NULL:
columns[i] = null;
break;
case Cursor.FIELD_TYPE_INTEGER:
columns[i] = Integer.toString(cursor.getInt(i));
break;
case Cursor.FIELD_TYPE_FLOAT:
columns[i] = Float.toString(cursor.getFloat(i));
break;
case Cursor.FIELD_TYPE_STRING:
columns[i] = cursor.getString(i);
break;
case Cursor.FIELD_TYPE_BLOB:
columns[i] = "[blob]";
break;
default:
Util.log(this, Log.WARN, "Unknown cursor data type=" + cursor.getType(i));
}
Util.log(this, Log.WARN, TextUtils.join(", ", columns) + " " + msg);
}
示例4: get
/**
* Returns an Object of the column. The receiving end is responsible for
* casting back to a correct data type.
*
* An Object with larger data type will be returned in case of floating point
* and integer numbers. I.e. they return doubles and longs respectively.
*
* @param columnName Name of the column within the cursor to get.
* @return Object with the contents of the column.
*/
public Object get(String columnName) {
int columnIndex = mCursor.getColumnIndex(columnName);
int type = mCursor.getType(columnIndex);
switch (type) {
case Cursor.FIELD_TYPE_FLOAT:
return mCursor.getDouble(columnIndex);
case Cursor.FIELD_TYPE_INTEGER:
return mCursor.getLong(columnIndex);
case Cursor.FIELD_TYPE_STRING:
return mCursor.getString(columnIndex);
case Cursor.FIELD_TYPE_NULL:
default:
return null;
}
}
示例5: getType
private static int getType(Cursor cursor, int columnIndex) throws Exception
{
if (Build.VERSION.SDK_INT >= 11)
{
return cursor.getType(columnIndex);
}
SQLiteCursor sqLiteCursor = (SQLiteCursor) cursor;
CursorWindow cursorWindow = sqLiteCursor.getWindow();
int pos = cursor.getPosition();
int type = -1;
if (cursorWindow.isNull(pos, columnIndex))
{
type = Cursor.FIELD_TYPE_NULL;
} else if (cursorWindow.isLong(pos, columnIndex))
{
type = Cursor.FIELD_TYPE_INTEGER;
} else if (cursorWindow.isFloat(pos, columnIndex))
{
type = Cursor.FIELD_TYPE_FLOAT;
} else if (cursorWindow.isString(pos, columnIndex))
{
type = Cursor.FIELD_TYPE_STRING;
} else if (cursorWindow.isBlob(pos, columnIndex))
{
type = Cursor.FIELD_TYPE_BLOB;
}
return type;
}
示例6: getTypeOfObject
public static int getTypeOfObject(Object obj) {
if (obj == null) {
return Cursor.FIELD_TYPE_NULL;
} else if (obj instanceof byte[]) {
return Cursor.FIELD_TYPE_BLOB;
} else if (obj instanceof Float || obj instanceof Double) {
return Cursor.FIELD_TYPE_FLOAT;
} else if (obj instanceof Long || obj instanceof Integer
|| obj instanceof Short || obj instanceof Byte) {
return Cursor.FIELD_TYPE_INTEGER;
} else {
return Cursor.FIELD_TYPE_STRING;
}
}
示例7: cursor2Map
public static Map<String, Object> cursor2Map(Cursor cursor) {
Map<String, Object> map = new HashMap<>();
if (cursor != null && cursor.getColumnCount() > 0) {
int count = cursor.getColumnCount();
for (int i = 0; i < count; i++) {
int type = cursor.getType(i);
Object value = null;
switch (type) {
case Cursor.FIELD_TYPE_STRING:
value = cursor.getString(i);
break;
case Cursor.FIELD_TYPE_INTEGER:
value = cursor.getInt(i);
break;
case Cursor.FIELD_TYPE_FLOAT:
value = cursor.getFloat(i);
break;
case Cursor.FIELD_TYPE_NULL:
LogUtils.d("未知的參數類型,type:" + type);
break;
case Cursor.FIELD_TYPE_BLOB:
LogUtils.d("未知的參數類型,type:" + type);
break;
}
if (value != null) {
String name = cursor.getColumnName(i);
map.put(name, value);
}
}
}
return map;
}
示例8: copyColumns
private void copyColumns(Cursor cursor, MatrixCursor result, int count) {
try {
Object[] columns = new Object[count];
for (int i = 0; i < count; i++)
switch (cursor.getType(i)) {
case Cursor.FIELD_TYPE_NULL:
columns[i] = null;
break;
case Cursor.FIELD_TYPE_INTEGER:
columns[i] = cursor.getInt(i);
break;
case Cursor.FIELD_TYPE_FLOAT:
columns[i] = cursor.getFloat(i);
break;
case Cursor.FIELD_TYPE_STRING:
columns[i] = cursor.getString(i);
break;
case Cursor.FIELD_TYPE_BLOB:
columns[i] = cursor.getBlob(i);
break;
default:
Util.log(this, Log.WARN, "Unknown cursor data type=" + cursor.getType(i));
}
result.addRow(columns);
} catch (Throwable ex) {
Util.bug(this, ex);
}
}
示例9: log
private static void log(final Cursor cursor) {
if (cursor != null) {
if (cursor.getCount() > 0) {
L.e("----------------------start--------------------");
L.i("數量:" + cursor.getCount() + " 列數:" + cursor.getColumnCount());
if (cursor.moveToFirst()) {
do {
for (int i = 0; i < cursor.getColumnCount(); i++) {
final String columnName = cursor.getColumnName(i);
final int columnIndex = cursor.getColumnIndex(columnName);
final int type = cursor.getType(columnIndex);
String data = "", ty = "";
if (type == Cursor.FIELD_TYPE_NULL) {
ty = "NULL";
data = "空值";
} else if (type == Cursor.FIELD_TYPE_BLOB) {
ty = "BLOB";
final byte[] bytes = cursor.getBlob(columnIndex);
data = String.valueOf(bytes) + " " + bytes.length * 1f / 1024f + "KB";
} else if (type == Cursor.FIELD_TYPE_FLOAT) {
ty = "FLOAT";
data = String.valueOf(cursor.getFloat(columnIndex));
} else if (type == Cursor.FIELD_TYPE_INTEGER) {
ty = "INTEGER";
data = String.valueOf(cursor.getInt(columnIndex));
} else if (type == FIELD_TYPE_STRING) {
ty = "STRING";
data = cursor.getString(columnIndex);
}
L.i("第" + i + "列->名稱:" + columnName + " 索引:" + columnIndex + " 類型:" + ty + " 值:" + data);
}
} while (cursor.moveToNext());
}
L.e("------------------------end---------------------");
}
cursor.close();
}
}
示例10: dumpCursor
/**
* Useful for debugging during development, so that arbitrary queries can be made, and their
* results inspected in the debugger.
*/
@SuppressWarnings("unused")
@RequiresApi(api = 11)
public static List<Map<String, String>> dumpCursor(Cursor cursor) {
List<Map<String, String>> data = new ArrayList<>();
if (cursor == null) {
return data;
}
cursor.moveToFirst();
while (!cursor.isAfterLast()) {
Map<String, String> row = new HashMap<>(cursor.getColumnCount());
for (String col : cursor.getColumnNames()) {
int i = cursor.getColumnIndex(col);
switch (cursor.getType(i)) {
case Cursor.FIELD_TYPE_NULL:
row.put(col, null);
break;
case Cursor.FIELD_TYPE_INTEGER:
row.put(col, Integer.toString(cursor.getInt(i)));
break;
case Cursor.FIELD_TYPE_FLOAT:
row.put(col, Double.toString(cursor.getFloat(i)));
break;
case Cursor.FIELD_TYPE_STRING:
row.put(col, cursor.getString(i));
break;
case Cursor.FIELD_TYPE_BLOB:
row.put(col, new String(cursor.getBlob(i), Charset.defaultCharset()));
break;
}
}
data.add(row);
cursor.moveToNext();
}
cursor.close();
return data;
}
示例11: query
@Override
public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs,
String sortOrder) {
Uri fileUri = getFileUriWhenReady(uri);
if (fileUri == null) return null;
// Workaround for a bad assumption that particular MediaStore columns exist by certain third
// party applications.
// http://crbug.com/467423.
Cursor source = super.query(fileUri, projection, selection, selectionArgs, sortOrder);
String[] columnNames = source.getColumnNames();
String[] newColumnNames = columnNamesWithData(columnNames);
if (columnNames == newColumnNames) return source;
MatrixCursor cursor = new MatrixCursor(newColumnNames, source.getCount());
source.moveToPosition(-1);
while (source.moveToNext()) {
MatrixCursor.RowBuilder row = cursor.newRow();
for (int i = 0; i < columnNames.length; i++) {
switch (source.getType(i)) {
case Cursor.FIELD_TYPE_INTEGER:
row.add(source.getInt(i));
break;
case Cursor.FIELD_TYPE_FLOAT:
row.add(source.getFloat(i));
break;
case Cursor.FIELD_TYPE_STRING:
row.add(source.getString(i));
break;
case Cursor.FIELD_TYPE_BLOB:
row.add(source.getBlob(i));
break;
case Cursor.FIELD_TYPE_NULL:
default:
row.add(null);
break;
}
}
}
source.close();
return cursor;
}