Kotlin版 import java.nio.ByteBuffer fun splitByteArray(byteArray: ByteArray, chunkSize: Int): Array<ByteArray> { val buffer = ByteBuffer.wrap(byteArray) val numChunks = Math.ceil(byteArray.size.toDouble() / chunkSize).toInt() val result = Array(numChunks) { ByteArray(chunkSize) } for (i in 0 until numChunks) { val chunk = ByteArray(chunkSize) buffer.get(chunk) result[i] = chunk } return result } java 版本 public static byte[][] splitArray(byte[] arrayToSplit, int chunkSize) { int numOfChunks = (int) Math.ceil((double) arrayToSplit.length / chunkSize); byte[][] output = new byte[numOfChunks][]; ByteBuffer buffer = ByteBuffer.wrap(arrayToSplit); for (int i = 0; i < numOfChunks; ++i) { int length = Math.min(buffer.remaining(), chunkSize); output[i] = new byte[length]; buffer.get(output[i]); } return output; }
Kotlin截取等长数组
于 2023-09-25 11:05:13 首次发布