【发布时间】:2014-12-20 14:00:02
【问题描述】:
我在一个文件(32 位整数值列表)中有二进制数据,我需要有效地进入一个 int 数组。除了将数据加载到 byte[] 中,然后一次将其转换为 int[] 一个元素之外,我看不到任何其他方法。这对于我需要加载的数据量来说太慢了。在实际手机上进行转换大约需要 3 秒。从 byte[] 中的文件读取数据几乎是瞬时的。
是否有任何库使用本地方法从文件中读取 int[],或将 byte[] 转换为 int[]?
【问题讨论】:
-
您确定是转换花费了大部分时间吗?我不相信。我先看看 I/O。
-
是的,我已经记录了操作,并且通过数组的迭代一直都是。事实上,我已经通过编写一个本地方法来解决这个问题。在 C++ 中,转换数据是一个简单的转换。
-
嘿克里斯!您认为您可以将代码粘贴到此处,或者粘贴到 pastebin.com,然后在此处发布指向它的链接吗?我相信这一小段代码对 Android 开发者来说可能是一个很好的增强。你是否也尝试过我写的 NIO 包,如果是的话:你有一些性能比较吗?我会对他们很感兴趣。 :)