// 添加数据

public byte[] insertdata(char id, String swapdata, byte[] resultdata) throws UnsupportedEncodingException {

int offset = 0;

int swaplen = 0, count = 0;

// byte[] buffer = new byte[swapdata.length()*2];

byte[] buffer = null;

if (swapdata != null) {

buffer = swapdata.getBytes("UTF-16LE");

count = buffer.length;

}

// for(int i=0; i

// char ch = swapdata.charAt(i);

// if(ch > 127){

// buffer[i*2] = (byte)(ch&0xff);

// buffer[i*2+1] = (byte)((ch>>8)&0xff);

// count += 2;

// }else{

// buffer[i*2] = (byte)(ch&0xff);

// buffer[i*2+1] = 0;

// count += 2;

// }

// }

//

if (resultdata == null) {

resultdata = new byte[count + 6];

} else {

byte[] temp = resultdata;

resultdata = new byte[temp.length + count + 6];

for (int i = 0; i < temp.length; i++) {

resultdata[offset++] = temp[i];

}

}

int lenth = count;

// 添加 id

resultdata[offset++] = (byte) id;

resultdata[offset++] = 0;

// 添加长度

resultdata[offset++] = (byte) (lenth & 0xff);

resultdata[offset++] = (byte) ((lenth >> 8) & 0xff);

resultdata[offset++] = (byte) ((lenth >> 16) & 0xff);

resultdata[offset++] = (byte) ((lenth >> 24) & 0xff);

for (int i = 0; i < count; i++) {

resultdata[offset++] = buffer[i];

}

return resultdata;

}

插入字节

public static String stringEncode(String swapdata) throws UnsupportedEncodingException {

int len = 0;

int count = 0;

byte[] buffer = null;

if (swapdata != null) {

buffer = swapdata.getBytes("UTF-16LE");

len = buffer.length;

}

byte[] resultdata = buffer;

int offset = 0;

count = len;

for(int i = 0; i < buffer.length; i++){

if(buffer[i]==0x38){

//复制之前的数据然后在数据末尾加入0

byte[] temp = resultdata;

resultdata = new byte[ count + 1];

count++;

for(int k=0;k

resultdata[k]=temp[k];

}

resultdata[offset++]=buffer[i];

resultdata[offset++]=0x00;

}else{

resultdata[offset++] = buffer[i];

}

}

return new String(resultdata, "UTF-16LE");

}

利用空间换算 插入字节

public static byte[] encodephone(byte[] phone)

{

int len=phone.length;

byte[] temp = new byte[len*2];

int pos=0;

for(int i=0;i

{

if(phone[i] == 0x38)

{

temp[pos++] = 0x38;

temp[pos++] = 0x00;

}

else

{

temp[pos++] = phone[i];

}

}

byte[] ret = new byte[pos];

System.arraycopy(temp,0,ret, 0, pos);

return ret;

}

字节增强java_java字节增加 - longjunping的个人空间 - OSCHINA - 中文开源技术交流社区...相关推荐

  1. eis系统 java_Java消息系统介绍 - marvin_vov的个人空间 - OSCHINA - 中文开源技术交流社区...

    Java消息系统介绍 在这篇文章中,我将会讨论面向消息的中间件(Message Orientated Middleware) 以及如何通过JMS来实现.另外,我还将讨论适用于使用JMS的典型用例,以及 ...

  2. 诸葛java_java - 诸葛_子房的个人空间 - OSCHINA - 中文开源技术交流社区

    前端: 1.HTML5新特性 2.js闭包 3.布局(盒子模型) 4.js原型链 Java: 1.基本数据类型 2.String为什么不能被继承,String与StringBuilder,String ...

  3. java 1m几个字节_1m等于多少kb - 巍巍的个人页面 - OSCHINA - 中文开源技术交流社区...

    经常上网的朋友可能对M这个单位比较的熟悉,比如下载一个文件,下载一首音乐或者电影,它们的文件大家通常都是以M为单位,一首歌通常为几M左右,一部电影可能达到了几百上千M了.还有我们的手机流量套餐,比如有 ...

  4. 报送数据标准校验java_Java:数据校验 - osc_gaqp1a2z的个人空间 - OSCHINA - 中文开源技术交流社区...

    在后台开发过程中,需要对参数进行校验. validation bean 是基于JSR-303标准开发出来的,使用注解的方式实现,是一套规范,可以实现参数的校验. Hibernate Validator ...

  5. 发送邮件 空格 java_java发送邮件 - 困觉的曼巴er的个人空间 - OSCHINA - 中文开源技术交流社区...

    public class SendEmail { /** * 做该例子出现的异常 * 1.Exception in thread "main" java.lang.NoClassD ...

  6. 拒绝java_java拒绝策略 - V丶zxw的个人空间 - OSCHINA - 中文开源技术交流社区

    java拒接策略 // 拒绝策略需要实现的接口 // 如果我们想实现自己的拒绝策略实现这个接口就行了 public interface RejectedExecutionHandler { // 只有 ...

  7. 中文转拼音 java_java汉字转拼音 - java-苦苦甜甜的个人空间 - OSCHINA - 中文开源技术交流社区...

    ava汉字转拼音,主要是利用pinyin4j工具实现,有些场合,可能会用到汉字转换成拼音的功能,下面是具体的代码. import net.sourceforge.pinyin4j.PinyinHelp ...

  8. 去重java_JAVA去重 - osc_ngi4bcdo的个人空间 - OSCHINA - 中文开源技术交流社区

    JAVA中去掉空格 1. String.trim() trim()是去掉首尾空格 2.str.replace(" ", ""); 去掉所有空格,包括首尾.中间 ...

  9. 解读java_Java字节码解读

    1. 字节码 Java字节码是Java虚拟机执行的一种指令格式.class文件是编译器编译之后供虚拟机解释执行的二进制字节码文件. 下面举个例子,写一段Java打码,并编译. package com. ...

最新文章

  1. Java 11 正式发布!
  2. linux c socket programming
  3. Visual Studio 2017 Android 调试无法连接到虚拟机
  4. python3.6字典有序_为什么Python 3.6以后字典有序并且效率更高?
  5. java生成和读取keystore_java-如何以编程方式创建新的KeyStore?
  6. JavaScript中清空数组的三种方式
  7. SQL Server 2005系列教学(12) 导入导出服务
  8. Linux之常用操作命令总结二
  9. IDEA光标跟随原因是jdk载入的问题BUG 修正 需要I安装最新版本1.8JDK 1.9之后的不清楚 谨慎...
  10. JAVA面向对象 从0.5到1
  11. 8.基本数据类型详细讲解-list/tuple
  12. 用户验收测试要求目标
  13. html 图片摆动效果,CSS摆动/摇动效果
  14. 《新零售 低价高效的数据赋能之路》读后感
  15. 怎么打开ofd文件的三种方法
  16. Mysql COUNT()条件计数
  17. e2label设置文件系统的卷标
  18. #3 SLAM_Environment perception(环境感知模型)
  19. 三维液压阀块软件MDTools的装配功能介绍
  20. 速卖通开放平台 预约交货模块开发指南

热门文章

  1. pandas基于时序数据计算模型预测推理需要的统计数据(累计时间、长度变化、变化率、方差、均值、最大、最小等):范围内的统计量、变化率、获得数据集最后的几条数据的统计量、变化率、获得范围内的统计量
  2. Python使用datetime中的timedelta模块实现时间增减:python计算100天后是哪年那月那日?
  3. R语言在dataframe的特定索引位置添加数据行而非在dataframe末尾append数据行实战
  4. R语言将dataframe长表转化为宽表实战:使用reshape函数、使用tidyr包的spread函数、使用data.table
  5. 数据库事务的ACID特性及含义
  6. ART基因序列生成器,究竟是做什么的?
  7. 三大测序平台芯片通量对比图
  8. 树莓派开发7-Pi摄像头+mjpg-streamer
  9. python 替换字符串中的元素
  10. LeetCode 94. Binary Tree Inorder Traversal--二叉树中序遍历--递归,迭代--C++,Python解法