卷心菜的媛 2015-06-02 06:51 采纳率: 40%
浏览 2376
已采纳

java里怎字符串“0xDE"转为字节型的0xDE

把从SD卡里取出来的字符串“0x03 0x04 0x05"转为(byte)0x03 (byte)0x03

  • 写回答

4条回答

  • danielinbiti 2015-06-02 07:28
    关注
     public static byte[] hexStringToBytes(String hexString) {  
            if (hexString == null || hexString.equals("")) {  
                return null;  
            }  
            hexString = hexString.toUpperCase();  
            if(hexString.indexOf("0X")>=0) hexString=hexString.replace("0X", "");
            int length = hexString.length() / 2;  
            char[] hexChars = hexString.toCharArray();  
            byte[] d = new byte[length];  
            for (int i = 0; i < length; i++) {  
                int pos = i * 2;  
                d[i] = (byte) (charToByte(hexChars[pos]) << 4 | charToByte(hexChars[pos + 1]));  
            }  
            return d;  
        }  
        private static byte charToByte(char c) {  
            return (byte) "0123456789ABCDEF".indexOf(c);  
        }  
        /**
         * @param args
         */
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            byte[] by = hexStringToBytes("0x030x040x05");
            byte[] by2 = new byte[]{(byte) 0x03,(byte) 0x04,(byte) 0x05};
                    //这两个by和by2是一致的
        }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算