gpt4 book ai didi

java - Android ByteArrayOutputStream.write - "int off"参数,什么是

转载 作者:行者123 更新时间:2023-12-01 08:49:19 24 4
gpt4 key购买 nike

不言自明的标题,android 网站上的 int 是什么,它有什么作用以及为什么我需要它?我理解 bytearrayoutputstream.write 中的第一个和第二个参数,但不理解这个

来自 Android 网络:输出流总结

void write(byte[] b, int off, int len)

将指定字节数组中从 offset off 开始的 len 个字节写入此输出流。

示例代码:

public byte[] getUrlBytes(String urlSpec) throws IOException {
URL url = new URL(urlSpec);
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
try {
ByteArrayOutputStream out = new ByteArrayOutputStream();
InputStream in = connection.getInputStream();
if (connection.getResponseCode() != HttpURLConnection.HTTP_OK) {
throw new IOException(connection.getResponseMessage() +
": with " +
urlSpec);
}
int bytesRead = 0;
byte[] buffer = new byte[1024];
while ((bytesRead = in.read(buffer)) > 0) {
out.write(buffer, 0, bytesRead);
}
out.close();
return out.toByteArray();
} finally {
connection.disconnect();
}

最佳答案

off 是“offset”的缩写,表示开始复制的索引。与len(或“length”)相结合,您可以复制任意子序列而不是整个源数组。例如:

byte[] array = {1,2,3,4};
ByteArrayOutputStream baos = new ByteArrayOutputStream();
baos.write(array, 1, 2); // copy 2 bytes from index 1
System.out.println(Arrays.toString(baos.toByteArray()));
// Output:
// [2, 3]

关于java - Android ByteArrayOutputStream.write - "int off"参数,什么是,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42476947/

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