截取拼接成新的字符串System.arraycopy()如何一分钟快速掌握(示例代码详解)

//该示例代码直接运行即可,喜欢我的文章请关注我,你们是我动力的源泉,谢谢
public static void main(String[] args) {
//声明一个字符串类型的变量,在实际开发中变量为获取的参数
String signDate="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACFp1M5hOSfsmETLhU+s0vjtxfZKINq/Q6VShh6uNDiSQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzABvMQZU3t8ILAMvi0Ns0aTFynN2BbngPJnMlucaFFo=";
	try {
	       //Base64EnOrDe.decode对编码后的签名值进行解码。
	       //接收签名值的数组
		byte [] sign=Base64EnOrDe.decode(signDate);
		//在控制台输出截取之前的属性值。
		System.out.println("截取前");
		在虚拟机日志中输出当前的解码后的属性值。
		ByteAndHex.printHex(sign);
		//创建出一个新的数组
		byte [] newSign=new byte[64];
		//System.arraycopy(源数组, 截取的下标从0开始算起, 目标数组也就是存放 
		//的新数组,存放下标开始的位置, 存放的参数);
		System.arraycopy(sign, 32, newSign,0, 32);
		System.arraycopy(sign, 96, newSign,32, 32);
		System.out.println("截取后");
		//虚机日志打印出新的签名值
		ByteAndHex.printHex(newSign);
	} catch (UnsupportedEncodingException e) {
		e.printStackTrace();
	}

猜你喜欢

转载自blog.csdn.net/hjmlyj/article/details/83650226
今日推荐