如何从sqlite读取blob数据并显示它

时间:2019-07-07 10:05:24

标签: java android sqlite blob

我下载了一个带一些单词及其定义的sqlite数据库文件,以学习制作字典。并且其定义以blob类型存储。如何阅读并显示其定义。我不知道Blob表中到底存储了什么。我尝试过这些:

cursor = database.rawQuery("select body from items A inner join items_info B on A.id = B.id where B.id = '" + id + "';" , null);

        while (c.moveToNext()){
            byte[] blob = c.getBlob(0);
        }

它有许多带数字和字母的符号。 然后我使用

将其转换为字符串
string = new String(blob, "UTF-8");

它给了我另一个结果,但不是我想要的。

如何获取该blob数据并将其显示?

这是我的数据库文件

enter image description here

2 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,我将该列存储为图像,然后尝试显示它,然后我找到了一个教程,对我有很大帮助,我建议您看一下tutorial的读写方法数据。

答案 1 :(得分:0)

尝试SELECT hex(body) .... 那么您将得到一个十六进制字符串。