ASCII、十六进制、字节数组、字符数组相互转换

	/**
	 * 字符串转换为Ascii
	 * @param value
	 * @return
	 */
	public static String stringToASCII(String value)  
	{  
		StringBuffer sbu = new StringBuffer();  
		char[] chars = value.toCharArray();   
		for (int i = 0; i < chars.length; i++) {  
			//			if(i != chars.length - 1)  
			//			{  
			//				sbu.append((int)chars[i]).append(",");  
			//			}
			//			else{
			//			}
			sbu.append((int)chars[i]);  
		}
		return sbu.toString();
	}

字符串转换为ASCII


	/**
	 * 字符串转换为十六进制
	 * @param value
	 * @return
	 */
	public static String convertStringToHex(String str) {  
		char[] chars = str.toCharArray();  
		StringBuffer hex = new StringBuffer();  
		for (int i = 0; i < chars.length; i++) {  
			hex.append(Integer.toHexString((int) chars[i]));  
		}  
		return hex.toString();  
	} 

字符串转换为十六进制


	/**
	 * 十六进制转换为字符串
	 * @param value
	 * @return
	 */
	public static String convertHexToString(String hex) {  

		StringBuilder sb = new StringBuilder();  
		StringBuilder temp = new StringBuilder();  

		// 49204c6f7665204a617661 split into two characters 49, 20, 4c...  
		for (int i = 0; i < hex.length() - 1; i += 2) {  
			// grab the hex in pairs  
			String output = hex.substring(i, (i + 2));  
			// convert hex to decimal  
			int decimal = Integer.parseInt(output, 16);  
			// convert the decimal to character  
			sb.append((char) decimal);  
			temp.append(decimal);  
		}  
		return sb.toString();  
	}

十六进制转换为字符串


	// char转byte

	public static byte[] getBytes (char[] chars) {
		Charset cs = Charset.forName ("UTF-8");
		CharBuffer cb = CharBuffer.allocate(chars.length);
		cb.put(chars);
		cb.flip();
		ByteBuffer bb = cs.encode(cb);	  
		return bb.array();
	}

字符数组转换为字节数组


	// byte转char

	public static char[] getChars(byte[] bytes) {
		Charset cs = Charset.forName ("UTF-8");
		ByteBuffer bb = ByteBuffer.allocate(bytes.length);
		bb.put(bytes);
		bb.flip();
		CharBuffer cb = cs.decode(bb);	  
		return cb.array();
	}

字节数组转换为字符数组




// 十进制转化为十六进制,结果为C8。

Integer.toHexString(200);

 

// 十六进制转化为十进制,结果140。

Integer.parseInt("8C",16)




  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值