0

给定一个字节数组,我可以使用代码从中创建一个文件

Files.write(String path, byte[] byteArray)

问题是,因为我必须使用非常大的数组大小,而且我不能制作一个长大小的数组

long n = 100000000;
byte byteArray = new byte[n]; //ERROR! Required int, found long

我所做的是我有几个字节数组。例如,因为我不能有一个 4gb 的数组,所以我制作了 20 个 200mb 的字节数组。这 20 个数组代表一个文件的信息。现在,我怎样才能从这个字节数组创建一个文件?我知道的唯一方法是使用 Files.write,但这仅适用于 1 个数组。

提前致谢。

4

1 回答 1

2

你可以使用:

Files.write(path, bytes, StandardOpenOption.APPEND);

在第一个电话之后。

更好的方法(不需要重新打开文件 20 次)是使用FileOutputStream,例如:

FileOutputStream fos = new FileOutputStream(path);
for(int i = 0; i < byteArrays.length; ++i)
{
    fos.write(byteArrays[i]);
}
于 2012-10-04T22:30:46.523 回答