Java 分割、合并byte数组
场景:上传文件较大,把存放文件内容byte数组拆分成小的。下载的时候按照顺序合并。
起初觉得挺麻烦的,写完觉得挺简单。
切割:
/**
* 拆分byte数组
*
* @param bytes
* 要拆分的数组
* @param size
* 要按几个组成一份
* @return
*/
public byte[][] splitBytes(byte[] bytes, int size) {
double splitLength = Double.parseDouble(size + "");
int arrayLength = (int) Math.ceil(bytes.length / splitLength);
byte[][] result = new byte[arrayLength][];
int from, to;
for (int i = 0; i < arrayLength; i++) {
from = (int) (i * splitLength);
to = (int) (from + splitLength);
if (to > bytes.length)
to = bytes.length;
result[i] = Arrays.copyOfRange(bytes, from, to);
}
return result;
}
合并: common lang3
ArrayUtils.addAll();
Java 分割、合并byte数组的更多相关文章
- Redis入门 – Jedis存储Java对象 - (Java序列化为byte数组方式)
Redis入门 – Jedis存储Java对象 - (Java序列化为byte数组方式) 原文地址:http://alanland.iteye.com/admin/blogs/1600685(欢迎转载 ...
- Java 基础类型转换byte数组, byte数组转换基础类型
Java 基础类型转换byte数组, byte数组转换基础类型 Java类型转换 java类对象转化为byte数组
- Java官方操纵byte数组的方式
java官方提供了一种操作字节数组的方法——内存流(字节数组流)ByteArrayInputStream.ByteArrayOutputStream ByteArrayOutputStream——by ...
- JAVA获取文件byte数组并输出进行展示和文件下载
/** * 文件下载 */ @GetMapping(value = "/download") public void download(HttpServletResponse re ...
- Java 文件和byte数组转换
/** * 获得指定文件的byte数组 */ private byte[] getBytes(String filePath){ byte[] buffer = null; try { File fi ...
- Java 图片与byte数组互相转换
//图片到byte数组 public byte[] image2byte(String path){ byte[] data = null; FileImageInputStream input = ...
- 深入 JAVA里面关于byte数组和String之间的转换问题
把byte转化成string,必须经过编码. 例如下面一个例子: importjava.io.UnsupportedEncodingException; publicclass test{ pub ...
- java File和Byte[]数组 相互转换
public class Test { public static void main(String[] args){ String filePath = "E:\\softoon\\wor ...
- c# Buffer.BlockCopy 合并 byte 数组
今天遇到点问题需要合并 多个 byte[] 参见 : http://q.cnblogs.com/q/30534/ 今天复习了 所有数组的基类是 Array
随机推荐
- 转载:monkeyrunner之eclipse中运行monkeyrunner脚本之环境搭建(四)
转载自:lynnLi 的monkeyrunner之eclipse中运行monkeyrunner脚本之环境搭建(四) monkeyrunner脚本使用Python语法编写,但它实际上是通过Jython来 ...
- 【noip 模拟赛curse,light,maze】 题解
2018.10.16 总结:考的不好 原因: 1.考的时候没状态,读题读不进去 2.考的时候不仔细,该得分没得到 T1:curse 1.咒语 (curse.pas/c/cpp) [题目描述] 亮亮梦到 ...
- Linux下jmap命令查看内存使用
Linux下jmap命令查看内存使用 jmap -heap 1234(1234为进程号) jmap是JDK自带的一个工具,非常小巧方便,其支持参数如下: -heap 打印heap空间的概要 ...
- UVA - 1197 (简单并查集计数)
Severe acute respiratory syndrome (SARS), an atypical pneumonia of unknown aetiology, was recognized ...
- 树莓派 4G模块 PPP 拨号 NDIS 拨号
资料参考:树莓派使用4G模块(华为ME909s-821)亲身尝试的可行方法(上)
- CentOS7 搭建RabbitMQ集群 后台管理 历史消费记录查看
简介 通过 Erlang 的分布式特性(通过 magic cookie 认证节点)进行 RabbitMQ 集群,各 RabbitMQ 服务为对等节点,即每个节点都提供服务给客户端连接,进行消息发送与接 ...
- 关于restful开发的疑惑
if 你没有了解过restful return; 一.疑惑 restful风格开发是有争议的,restful的设计是请求“resource”,然后只能对“resource”做CRUD操作.抽象于这 ...
- vue 复习(2)v-bind的应用 v-bind:classv-binf:style
dasdclass与style绑定v-bind 1. 绑定HTML Class 对象语法 有些时候我们想动态的切换class的类名.在原生的js或jq中我们就要通过事件来动态的改变class类名,但在 ...
- js中的冒泡排序
<!-- 冒泡排序:把一组数列按照一定的顺序进行排列,从大到小,或者从小到大 --> // 控制循环的轮数 arr = [3,14,55,2,1,4,5 ...
- 【Java web 容器resin的安装】
#resin的安装 #启动resin #访问resin监听的java web容器端口 resin修改端口监听号