📄 bytedatautil.java
字号:
package com.topking.rt.util;
import java.util.ArrayList;
import java.util.List;
import com.topking.rt.data.NewByteData;
public final class ByteDataUtil {
public static List<NewByteData> getChangedByte(byte[] b_old,byte[] b_new){
List<NewByteData> changedDataList = new ArrayList<NewByteData>();
int minLength = b_old.length>b_new.length?b_new.length:b_old.length;
for(int i=0;i<minLength;i++){
if(b_old[i]!=b_new[i]){
NewByteData data = new NewByteData();
data.setData(b_new[i]);
data.setIndex(i);
changedDataList.add(data);
}
}
if(b_new.length>b_old.length){
int overLength = b_new.length-b_old.length;
for(int j=0;j<overLength;j++){
NewByteData data = new NewByteData();
data.setData(b_new[j+minLength]);
data.setIndex(j+minLength);
changedDataList.add(data);
}
}
return changedDataList;
}
public static byte[] getNewImageByte(byte[] old,List<NewByteData> changedData){
byte[] newImageByteData = null;
int maxIndex = changedData.get(changedData.size()-1).getIndex();
int size = changedData.size();
if(maxIndex<=old.length-1){
newImageByteData = old;
for(int i=0;i<size;i++){
NewByteData newData = changedData.get(i);
newImageByteData[newData.getIndex()] = newData.getData();
}
}else{
newImageByteData = new byte[maxIndex+1];
System.arraycopy(old,0,newImageByteData,0,old.length);//Copy the old data
for(int i=0;i<size;i++){
NewByteData newData = changedData.get(i);
newImageByteData[newData.getIndex()] = newData.getData();
}
}
return newImageByteData;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -