android 字符串转byte数组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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>

详细

参考技术A 直接使用String的getByte()方法就行。追问

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

追答

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

追问

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

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

Java中byte数组转换成string字符串可以直接使用string类的构造函数。而string转byte数组,则可以使用string类型的getBytes()方法进行转换,如下形式:
1、string 转 byte[]
String str = "Hello";//声明一个字符串
byte[] srtbyte = str.getBytes();//使用string类的getBytes方法进行转换
2、byte[] 转 string
byte[] srtbyte;//声明一个byte字节数组
String res = new String(srtbyte);//使用构造函数转换成字符串
System.out.println(res);
也可以将byte转换的时候,设定编码方式相互转换,如下代码:
String str = "hello";
byte[] srtbyte = null;
try
srtbyte = str.getBytes("UTF-8");//设定转换的编码格式
String res = new String(srtbyte,"UTF-8");
System.out.println(res);
catch (UnsupportedEncodingException e) //有可能会出现不能支持的编码格式,捕捉异常。
e.printStackTrace();
参考技术A //string 转 byte[]
String str = "Hello";
byte[] srtbyte = str.getBytes();
// byte[] 转 string
String res = new String(srtbyte);
System.out.println(res);

//当然还有可以设定编码方式

String str = "hello";
byte[] srtbyte = null;
try
srtbyte = str.getBytes("UTF-8");
String res = new String(srtbyte,"UTF-8");
System.out.println(res);
catch (UnsupportedEncodingException e)
// TODO Auto-generated catch block
e.printStackTrace();
本回答被提问者采纳

以上是关于android 字符串转byte数组的主要内容,如果未能解决你的问题,请参考以下文章

c# byte数组转string

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

如何将16进制 转换byte数组

C++ BYTE数组转字符串

c# byte 数组 转 short数组

netty bytebuf怎么转成byte数组