JAVA String与byte转换

原创 2016年08月30日 10:26:31


1.byte数组转String

 public static String byte2String(byte[]byteArray){
     char []result=new char[byteArray.length*2];
     for(int i=0;i<byteArray.length;i++){
	        char temp= (char)(((byteArray[i]&0xf0)>>4)&0x0f);
			result[i*2]=(char)(temp>9?'A'+temp-10:'0'+temp);
			temp=(char)(byteArray[i]&0x0f);
			result[i*2+1]=(char) (temp>9?'A'+temp-10:'0'+temp);
		}
		return new String(result);
	}
2.String转byte数组

public static byte[] string2Byte(String s){
byte []result=new byte[s.length()/2];
		int j=0;
		for(int i=0;i<(s.length()+1)/2;i++){
			result[i]=char2Byte(s.charAt(j++));
			result[i]= (byte) ((char2Byte(s.charAt(j++)))+(result[i]<<4));
		}
		return result;
	}
	public static byte char2Byte(char c){
		if('a'<=c&&c<='f'){
			return (byte)(c-'a'+10);
		}
		else if('A'<=c&&c<='F'){
			return (byte)(c-'A'+10);
		}
		else if('0'<=c&&c<='9'){
			return (byte)(c-'0');
		}
		return (byte)(-1);
	}
3.String转BCD(asc码16进制)

public static byte[]string2BCD(String s){
		byte[]result=new byte[s.length()];
		for(int i=0;i<s.length();i++){
			result[i]=(byte)(s.charAt(i));
		}
		return result;
	}





版权声明:本文为博主原创文章,未经博主允许不得转载。

Java 字符串与byte之间的相互转换

写在前面你是否跟我一样,在一些需要加密的代码里看见需要把字符串转换为字节的场景,例如MD5加密。而你每次看到像我以前一样,自动地略过(反正别人都写好了,我用就是了)。如果是的话,不要再逃避了,下面跟我...
  • Leo_eight
  • Leo_eight
  • 2016年10月02日 19:09
  • 19551

Java中String与byte数组的相互转换

String转byte数组:String str = "abcd"; byte[] bs = str.getBytes();byte数组转String:String str = "abcd"; byt...
  • F1321368
  • F1321368
  • 2016年10月27日 16:22
  • 4415

java里面byte数组和String字符串怎么转换

//string 转 byte[] String str = "Hello"; byte[] srtbyte = str.getBytes(); // byte[] 转 string Stri...
  • abin_gha
  • abin_gha
  • 2011年04月12日 13:42
  • 234353

Java中String和byte[]的相互转换

/* String和byte[]的相互转换 */ public class Test { public static void main(String[] args) { Stri...
  • retuJQC
  • retuJQC
  • 2018年01月13日 15:26
  • 27

将byte数组转化为string,及其还原。

测试程序的时候,发现从内网从外网接收到的应用大小与原应用大小不符,调试了好久才发现是byte数组与string相互转化出现了问题。根据项目需要,外网发送应用时,先将byte[]转化为字符串,然后内网接...
  • wang8978
  • wang8978
  • 2016年08月22日 19:47
  • 4824

java中byte[]、buffer、string转换

将原数组数据拷贝到目的数组 System.arraycopy(src, Srcposition, dst, DstPosition,dstLength); 将字节数组转换成字节缓冲区 Byt...
  • addisonjing
  • addisonjing
  • 2017年03月09日 19:31
  • 2674

java 里面的string 和byte[] 怎么互转?

1.string 转 byte[] byte[] midbytes=isoString.getBytes("UTF8"); //为UTF8编码 byte[] isoret = srt2.getByte...
  • phenixyf
  • phenixyf
  • 2016年08月04日 14:26
  • 1207

[Java]_[初级]_[utf8编码的byte[]数组转换为String时要注意的问题]

场景: 1. 通过socket给Java传递byte[]数组时,utf-8的字节数组在转换为String, Java并不会遇到0就停止结束,而是一直使用完byte[]的容量,所以在转换为Java的St...
  • infoworld
  • infoworld
  • 2015年03月30日 23:08
  • 16283

Java中字符串与byte数组之间的相互转换

Java语言中字符串类型和字节数组类型相互之间的转换经常发生,网上的分析及代码也比较多,这篇文章将主要介绍Java中字符串与byte数组之间的相互转换,有需要的朋友们可以参考借鉴,下面来一起看看吧。 ...
  • ID_Rin
  • ID_Rin
  • 2016年12月21日 19:10
  • 3610

JAVA byte数组转化为16进制字符串输出

最简单的方法: 利用javax.xml.bind包下的DatatypeConverter printHexBinary public static java.lang.String printHex...
  • lgh1992314
  • lgh1992314
  • 2017年01月06日 12:36
  • 8446
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JAVA String与byte转换
举报原因:
原因补充:

(最多只允许输入30个字)