java 十六进制字符串转byte数组,byte数组转十六进制字符串

将十六进制string转成byte数组

public static byte[] hexStringToBytes(String hexString) {

        if (hexString == null || hexString.equals("")) { 

            return null; 

        } 

        hexString = hexString.toUpperCase(); 

        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); 

    } 

    private static String ByteArrayToHexString(byte[] data) //java可用

    {

        String result = "";

        for (int i = 0; i < data.length; i++)

        {

            String hex = Integer.toHexString(data[i] & 0xFF);

            if (hex.length() == 1)

            {

                hex = "0" + hex;

            }

            result += hex.toUpperCase();

        }

        return result;

    }

    private static byte[] intToBytes2(int n) { 

        byte[] b = new byte[4]; 

        for (int i = 0; i < 4; i++) { 

            b[i] = (byte) (n >> (24 - i * 8)); 

        } 

        return b; 

    } 

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 最先接触编程的知识是在大学里面,大学里面学了一些基础的知识,c语言,java语言,单片机的汇编语言等;大学毕...
    oceanfive阅读 3,158评论 0 7
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,780评论 18 399
  • 一、 1、请用Java写一个冒泡排序方法 【参考答案】 public static void Bubble(int...
    独云阅读 1,426评论 0 6
  • 七律 咏海南省省花三角梅 □陈奋 颀然独傲时芳里, 许与椰风结孟邻。 绿涨长堤烟水阔, 红羞空际晚霞新。 心怀热浪...
    陈奋阅读 272评论 0 2
  • 让认识认识gupursh
    小情歌_阅读 207评论 0 0