首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何索引将(大多数)连续整数映射到字符串的CSV文件,以便在Java中高效地搜索它?

如何索引将(大多数)连续整数映射到字符串的CSV文件,以便在Java中高效地搜索它?
EN

Stack Overflow用户
提问于 2013-05-15 07:04:26
回答 2查看 156关注 0票数 1

我有一个包含两列的大型CSV文件(8000行)。第一列是从1到10000的整数,第二列是6到10个字符的字符串。因为我的实现是在Android中实现的,所以我使用AssetManager访问文件,所以我必须使用InputStream来读取文件。

系统的输入是从1到10000的整数,输出是相应的字符串,如果没有匹配的整数,则输出为null。应用程序的一般用例涉及多个(~4)这样的请求,在我当前的实现中,每个请求都会冻结应用程序2-3秒。

我希望能够高效地执行此搜索,使用电话簿(即O(log(n))时间)搜索,而无需将整个文件存储在内存中。我假设我应该将文件从CSV重新格式化为其他格式...也许是SQL数据库?对于这种情况,合适的实现是什么?

我完全不熟悉大规模的数据访问,老实说,我对如何以及何时将文件加载到内存中并在Android上访问文件的心理模型有点模糊。提前谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-15 07:14:26

我建议将csv文件导入到SqLite数据库中。这里有一个关于如何做到这一点的链接:SqLite3 CSV,这里有一个关于在安卓中使用SqLite的很好的教程:Android SQLite Database and ContentProvider - Tutorial

票数 2
EN

Stack Overflow用户

发布于 2013-05-15 07:49:19

是的,它会的。您可以将其保存到内部存储器或SD卡中。我还建议您将数据迁移到SQLite。我一直在检查这个链接,看起来真的很棒。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16554213

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档