android 字符串转byte数组

final byte send[]=new byte[100];
final String IpData="ATPC=0,192.168.1.2,6800";
最后ipdata怎么转换send

Android 字符串、byte数组与16进制数组间的转换

<span style="font-family:SimSun;font-size:14px;">// 字符串转换成16进制文字列的方法  
public String toHex(String str) {  
    String hexString="0123456789ABCDEF";  
    byte[] bytes=str.getBytes();  
    StringBuilder hex=new StringBuilder(bytes.length * 2);  
    for(int i=0;i<bytes.length;i++) {  
        hex.append(hexString.charAt((bytes[i] & 0xf0) >> 4));  // 作用同 n / 16   
        hex.append(hexString.charAt((bytes[i] & 0x0f) >> 0));  // 作用同 n    
        hex.append(' ');  //中间用空格隔开  
    }  
    return hex.toString();  
}  
          
//将16进制数组转换为字符串  
public static String decode(String bytes) {   
    String hexString="0123456789ABCDEF";  
    ByteArrayOutputStream baos=new ByteArrayOutputStream(bytes.length()/2);   
    //将每2位16进制整数组装成一个字节   
//  for(int i=0;i<bytes.length();i+=2)   
//      baos.write((hexString.indexOf(bytes.charAt(i))<<4 | hexString.indexOf(bytes.charAt(i+1))));   
    //将每3位(第3位为空格)中的前2位16进制整数组装成一个字节   
    for(int i=0;i<bytes.length();i+=3) {  
        baos.write((hexString.indexOf(bytes.charAt(i))<<4 | hexString.indexOf(bytes.charAt(i+1))));  
    }  
    return new String(baos.toByteArray());   
}</span>

详细

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-12-13
直接使用String的getByte()方法就行。追问

我需要再把这些转完后的值,放进100个数组里

追答

直接付给他就行了代码就是
send = IpData.getbyte();

追问

我已经知道了,用数组赋值就可以实现我的100个数组

相似回答