我正在尝试为我的应用程序使用一个数据库,它需要阿拉伯语中所有单词的列表,遗憾的是这个数据库的大小非常大,超过200 MB,我已经看到了这样的唯一解决方案问题是使用网络服务或我的数据库在线并在首次使用时下载它在我的情况下是不实际的,因为这是一个游戏,用户可以在他断开连接时播放它,加上下载大小将会很大并且会使用他的手机上有很多空间。我无法找到一种方法来使我的DB的大小合理。
我的问题是,是否有办法缩小数据库的大小,因为知道存储在其中的所有数据都是文本类型。 我注意到手机中的键盘有自动完成功能,从哪里获取有效单词列表?我可以将它用于我的申请吗?
答案 0 :(得分:1)
您希望将文字存储在prefix tree (or trie)中。它是这种数据的节省空间的结构。
有关详细信息,请参阅:https://gamedev.stackexchange.com/questions/4142/best-way-to-store-a-word-list-in-java-android
答案 1 :(得分:0)
您的数据库可能包含了很多额外信息,例如语法,变形,注释等。如果是这种情况,那么只需要在手机内部使用有限的数据/列重新创建数据库。 / p>