如题,每个字符能用空格分开,比如:35 33 30 30,16进制要求是两位数的,。现在用了一个方法,但是只能输出4,6。方法代码如下:
public static String toHexString(String s) 

String str=""; 
for (int i=0;i<s.length();i++) 

int ch = (int)s.charAt(i); 
String s4 = Integer.toHexString(ch); 
str = str + s4; 

return str; 

解决方案 »

  1.   

    为什么不把字符串根据空格分割然后循环调用Integer.toHexString方法呢
      

  2.   

    把字符串根据空格分割然后循环调用Integer.toHexString方法
      

  3.   

    没看懂LZ的意思public static String toHexString(String s) {  
        StringBuilder buf = new StringBuilder();
        for (char c : s.toCharArray()) {  
            buf.append(String.format("%02X", (int)c));  
        }  
        return str;  
      

  4.   

    //将字符串转化成16进制字符串
    public static  String toHexString(String s) { 
    String str=""; 
    for (int i=0;i<s.length();i++) { 
    int ch = (int)s.charAt(i); 
    String s4 = Integer.toHexString(ch & 0xFF); 
    if (s4.length() == 1) {
    s4 ='0'+s4;
        }  
    str = str + s4; 
    str = str.toUpperCase();
    //System.out.println (str);
    return str;
    }