java 如何将一个byte[]数组分成多个部分发送?

问题描述

java 如何将一个byte[]数组分成多个部分发送?

现在一个项目,是要求手机端向智能手表发送byte[]数组,一个很大的byte数组,比如16*1024个字节,如何分成多个部分,比如每个部分都是200字节,然后把这几个部分一部分部分的发到手表端,就是byte[]数组分块,发送的函数怎么来写呀!?谢谢各位大神了!

解决方案

Arrays.copyOfRange可以复制你的数组的一块构成新的数组

你循环调用就可以了

解决方案二:

参考http://www.yiibai.com/java/util/arrays_copyofrange_boolean.html

解决方案三:

定义一个200的数组,每次copy进去200长度,依次发送

解决方案四:

如果不需要多线程处理的话,不需要分成多个部分。

解决方案五:

哎,不得不吐槽,这不是ByteBuffer的应用场景么!!!NIO都出来十几年了,咋就没人用呢

时间: 2024-12-19 09:30:24

java 如何将一个byte[]数组分成多个部分发送?的相关文章

java代码将一个byte数组封装成url,可以直接访问网络下载

问题描述 java代码将一个byte数组封装成url,可以直接访问网络下载 1.我从别的地方能且只能得到一个byte数组和一个文件名,此数组原本是一个doc文件, 2.我现在要将这个数组封装成url下载地址,就是直接在浏览器中输入地址就能直接下载的那种 3.我用的语言是java,服务器是tomcat 各位大神,救命! 解决方案 换个思路,不是组装成url,而是在给定一个selevet,然后在相应的response写回数据.还有要在response返回时设置相应的header参数. Content

string-c++中怎么将本地图片转化成java需要的byte数组

问题描述 c++中怎么将本地图片转化成java需要的byte数组 c++调用java写的webservice时,需要传入一个本地图片转化为byte数组的数据,求大神给讲一下. 这是java写的webservice接口方法. public String verifyFaceSingle(String deviceId,byte[] leftImage,byte[] rightImage); 现在需要在vs2010里面获取byte[] leftImage. Serializer->StartElem

读取Java文件到byte数组的三种方法(总结)_java

读取Java文件到byte数组的三种方法(总结) package zs; import java.io.BufferedInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.Rando

深入 JAVA里面关于byte数组和String之间的转换问题

把byte转化成string,必须经过编码.  例如下面一个例子:  importjava.io.UnsupportedEncodingException; publicclass test{ publicstatic void main(String g[]) { Strings = "12345abcd"; byteb[] = s.getBytes(); Stringt = b.toString(); System.out.println(t); } } 输出字符串的结果和字符串s

Java 文件和byte数组转换

/** * 获得指定文件的byte数组 */ private byte[] getBytes(String filePath){ byte[] buffer = null; try { File file = new File(filePath); FileInputStream fis = new FileInputStream(file); ByteArrayOutputStream bos = new ByteArrayOutputStream(1000); byte[] b = new

java图片与byte数组的转换?我怎么转换不回去呀???

问题描述 package com.image;import java.awt.image.BufferedImage;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.File;import javax.imageio.ImageIO;public class ImageWithByte { public static byte[] image2Bytes(String

字符-java 中byte数组转换问题,求思路

问题描述 java 中byte数组转换问题,求思路 现在做的项目有一个byte数组转换的问题,思考很久没有思路,求各路大神给点意见. 需求 :将一个byte数组中的每个元素拆分成两个byte.分别保存前一个byte中的16进制两位的内容的ascii码. 事例 : byte[] a = {0x24,0xBD}; byte[] b = new byte[4]; 想得到的结果: b[0] == 0x32; b[1] == 0x34; b[2] == 0x42; b[3] == 0x44;

java byte数组与int,long,short,byte的转换实现方法_java

实例如下: public class DataTypeChangeHelper { /** * 将一个单字节的byte转换成32位的int * * @param b * byte * @return convert result */ public static int unsignedByteToInt(byte b) { return (int) b & 0xFF; } /** * 将一个单字节的Byte转换成十六进制的数 * * @param b * byte * @return conv

基于java中byte数组与int类型的转换(两种方法)_java

java中byte数组与int类型的转换,在网络编程中这个算法是最基本的算法,我们都知道,在socket传输中,发送.者接收的数据都是 byte数组,但是int类型是4个byte组成的,如何把一个整形int转换成byte数组,同时如何把一个长度为4的byte数组转换为int类型.下面有两种方式. public static byte[] int2byte(int res) { byte[] targets = new byte[4]; targets[0] = (byte) (res & 0xf