从文件中的随机位置读取字符串的最快方法是什么?该文件位于 SD 卡上,代码将在 Android 中运行。
我目前在做什么——我将字节读入字节数组并将其传递给 String 构造函数。字符集是 UTF-8。大约 90% 的运行时间花在了 String 构造函数上,其中 Charset.decode(...) 是瓶颈。
我正在读取的字符串是公共(public)交通站点名称,因此它们的平均长度约为 15 个字符。
编辑:在 Android 2.3.3 模拟器上测试,它比 2.1 快得多(可能是由于 JIT 编译器)。每个String可以在大约1ms内读取,足够快了。
最佳答案
您没有提及您尝试读取多少字节、您从读取字节创建新字符串的频率或您的脚本执行需要多长时间。
发布一些代码,向我们展示您使用什么算法来实现您正在做的事情。对我来说,这听起来像是一个微不足道的优化,因为如果不自己编写就无法控制解码功能。如果其他一切都得到优化,我会说你的速度与你从文件中读取的速度差不多。再说一次,我们在谈论多少个操作?此跟踪需要多长时间?
关于java - 从文件中读取字符串最快的方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8659831/