masterJ2SE篇008——报文

来源:互联网 发布:网站美工需要会什么 编辑:程序博客网 时间:2024/05/29 02:23

直接看代码,注释已经写清楚了

package com.zls.masterjava.baowen;import java.io.UnsupportedEncodingException;import java.util.Arrays;public class BaowenUtil {public static String DEFAULT_ENCODE = "UTF-8";/** * 将content组装成一个长度为length的报文,多余的用空格表示 * 组装报文不是简单的把返回[content+(length-content.length())个空格] * @param content * @param length * @return * @throws UnsupportedEncodingException */public static byte[] remoldColumn(String content,int length,String encode) throws UnsupportedEncodingException{//获取bytesbyte[] contents=content.getBytes(encode);//新建一个数组,长度为length,用contents填充,填充完,剩余的部分为0byte[] result=Arrays.copyOf(contents, length);//将剩余的那部分用空格代替Arrays.fill(result, contents.length, length, new Byte("32"));return result;}public static byte[] remoldColumn(String content,int length) throws UnsupportedEncodingException{return remoldColumn(content, length, BaowenUtil.DEFAULT_ENCODE);}/** * 将byte数组从beginIndex到endIndex截取,转化为String返回 * @param b * @param beginIndex * @param endIndex * @param encode * @return * @throws UnsupportedEncodingException */public static String getString(byte[] b,int beginIndex,int endIndex, String encode) throws UnsupportedEncodingException{return new String(Arrays.copyOfRange(b, beginIndex,endIndex ),encode);}public static String getString(byte[] b,int beginIndex,int endIndex) throws UnsupportedEncodingException{return getString(b, beginIndex, endIndex, BaowenUtil.DEFAULT_ENCODE);}}

package com.zls.masterjava.baowen;import java.io.UnsupportedEncodingException;import java.util.Arrays;import org.junit.Test;public class BaowenTest {@Testpublic void test1() throws UnsupportedEncodingException {String message1="abcdefg";String message2="我是中国人";//将字符串转为报文byte[] message1Byte = BaowenUtil.remoldColumn(message1, 20);byte[] message2Byte = BaowenUtil.remoldColumn(message2, 20);System.out.println(Arrays.toString(message1Byte));System.out.println(Arrays.toString(message2Byte));System.out.println("==========================");//将报文转化为字符串String message3 = BaowenUtil.getString(message1Byte,0,20);String message4 = BaowenUtil.getString(message2Byte,0,20);System.out.println("["+message3+"],legth:"+message3.length());System.out.println("["+message4+"],legth:"+message4.length());}}


0 0