gpt4 book ai didi

java - 有效地将二进制数据读入 int[]

转载 作者:行者123 更新时间:2023-11-30 09:49:30 24 4
gpt4 key购买 nike

我在一个文件中有二进制数据(一个 32 位整数值的列表),我需要将其有效地放入一个 int 数组中。除了将数据加载到 byte[] 然后一次将其转换为 int[] 一个元素之外,我看不出有什么方法可以做到这一点。这对于我需要加载的数据量来说太慢了。在实际手机上进行转换大约需要 3 秒。从 byte[] 中的文件中读取数据几乎是瞬时的。

是否有任何库使用本地方法从文件读取 int[],或将 byte[] 转换为 int[]?

最佳答案

你有没有尝试过这样的事情:

File file = new File("binary.file");
FileInputStream fin = new FileInputStream(file);
BufferedInputStream bin = new BufferedInputStream(fin);
DataInputStream din = new DataInputStream(bin);

int count = (int) (file.length() / 4);
int[] values = new int[count];
for (int i = 0; i < count; i++) {
values[i] = din.readInt();
}

即使在手机上,这也应该相对较快,除非您只是处理一个巨大的文件。

关于java - 有效地将二进制数据读入 int[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5751006/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com