![](/img/trans.png)
[英]what is the fastest way to write a byte array to socket outputstream in java
[英]What's the better way to write 2 byte arrays to an OutputStream?
我有两个字节数组,需要将它们写入套接字上的OutputStream。 现在我做这样的事情:
byte[] arr1, arr2;
OutputStream os;
os.write(arr1);
os.write(arr2);
我想知道先合并两个数组(例如,与System.arraycopy()
),然后再调用os.write(combinedArray)
是否os.write(combinedArray)
?
而且,如果有问题,我会从Android的角度出发。
从技术上讲,您最好将OutputStream包装在BufferedOutputStream中,并分别写入每个byte [] 。 完成编写后,请调用bufferedOutputStream.flush();。 无论您使用单独的字节数组对其写入多少次,BufferedOutputStream都会在其内部缓冲区已满时自动进行写入,并且对flush的调用可确保所有数据都被写入。 底层的BufferedOutputStream将确定何时最有效地为您组合字节数组,因此您不必使代码变得多余。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.