當前位置: 首頁>>代碼示例>>Java>>正文


Java Cursor.FIELD_TYPE_BLOB屬性代碼示例

本文整理匯總了Java中android.database.Cursor.FIELD_TYPE_BLOB屬性的典型用法代碼示例。如果您正苦於以下問題:Java Cursor.FIELD_TYPE_BLOB屬性的具體用法?Java Cursor.FIELD_TYPE_BLOB怎麽用?Java Cursor.FIELD_TYPE_BLOB使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在android.database.Cursor的用法示例。


在下文中一共展示了Cursor.FIELD_TYPE_BLOB屬性的12個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: insertItemToSheet

private void insertItemToSheet(String table, HSSFSheet sheet, ArrayList<String> columns) {
    HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
    Cursor cursor = database.rawQuery("select * from " + table, null);
    cursor.moveToFirst();
    int n = 1;
    while (!cursor.isAfterLast()) {
        HSSFRow rowA = sheet.createRow(n);
        for (int j = 0; j < columns.size(); j++) {
            HSSFCell cellA = rowA.createCell(j);
            if (cursor.getType(j) == Cursor.FIELD_TYPE_BLOB) {
                HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 0, 0, (short) j, n, (short) (j + 1), n + 1);
                anchor.setAnchorType(3);
                patriarch.createPicture(anchor, workbook.addPicture(cursor.getBlob(j), HSSFWorkbook.PICTURE_TYPE_JPEG));
            } else {
                cellA.setCellValue(new HSSFRichTextString(cursor.getString(j)));
            }
        }
        n++;
        cursor.moveToNext();
    }
    cursor.close();
}
 
開發者ID:androidmads,項目名稱:SQLite2XL,代碼行數:22,代碼來源:SQLiteToExcel.java

示例2: 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;
}
 
開發者ID:gzxishan,項目名稱:OftenPorter,代碼行數:26,代碼來源:TypeUtil.java

示例3: 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;
        }
    }
}
 
開發者ID:odoo-mobile-intern,項目名稱:odoo-work,代碼行數:23,代碼來源:ListRow.java

示例4: _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);
}
 
開發者ID:ukanth,項目名稱:XPrivacy,代碼行數:24,代碼來源:XContentResolver.java

示例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;
}
 
開發者ID:gzxishan,項目名稱:OftenPorter,代碼行數:31,代碼來源:TypeUtil.java

示例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;
    }
}
 
開發者ID:kranthi0987,項目名稱:easyfilemanager,代碼行數:14,代碼來源:DataBaseUtils.java

示例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;
}
 
開發者ID:jessie345,項目名稱:RetrofitAppArchitecture,代碼行數:33,代碼來源:Utils.java

示例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);
	}
}
 
開發者ID:ukanth,項目名稱:XPrivacy,代碼行數:28,代碼來源:XContentResolver.java

示例9: next

@NonNull
@Override
public RowSnapshot<T> next()
{
    try
    {
        if (!hasNext())
        {
            throw new NoSuchElementException("No more rows to iterate");
        }
        Map<String, String> charData = new HashMap<>();
        Map<String, byte[]> byteData = new HashMap<>();
        String[] columnNames = mCursor.getColumnNames();
        for (int i = 0, count = mCursor.getColumnCount(); i < count; ++i)
        {
            String columnName = columnNames[i];
            if (mCursor.getType(i) == Cursor.FIELD_TYPE_BLOB)
            {
                byteData.put(columnName, mCursor.getBlob(i));
            }
            else
            {
                charData.put(columnName, mCursor.getString(i));
            }
        }
        RowSnapshot<T> rowSnapshot = new ValuesRowSnapshot<>(mTable, new MapRowDataSnapshot<T>(charData, byteData));
        mCursor.moveToNext();
        return rowSnapshot;
    }
    catch (Exception e)
    {
        // we can't use finally here, because we want to close the cursor only in an error case.
        mCursor.close();
        throw e;
    }
}
 
開發者ID:dmfs,項目名稱:ContentPal,代碼行數:36,代碼來源:QueryRowSet.java

示例10: 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();
    }
}
 
開發者ID:angcyo,項目名稱:RLibrary,代碼行數:39,代碼來源:ContactsPickerHelper.java

示例11: 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;
}
 
開發者ID:uhuru-mobile,項目名稱:mobile-store,代碼行數:47,代碼來源:Utils.java

示例12: 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;
}
 
開發者ID:rkshuai,項目名稱:chromium-for-android-56-debug-video,代碼行數:45,代碼來源:ChromeFileProvider.java


注:本文中的android.database.Cursor.FIELD_TYPE_BLOB屬性示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。