zoukankan      html  css  js  c++  java
  • java中 16进制字符串 与普通字符串 与 byte数组 之间的转化

    方法依赖commons-codec包  maven的引入方式如下

    1 <dependency>
    2    <groupId>commons-codec</groupId>
    3    <artifactId>commons-codec</artifactId>
    4    <version>1.12</version>
    5 </dependency>

    1. 普通字符串转换为16进制字符串

     1    /**
     2      * 将普通字符串转换为16进制字符串
     3      * @param str 普通字符串
     4      * @param lowerCase 转换后的字母为是否为小写  可不传默认为true
     5      * @param charset 编码格式  可不传默认为Charset.defaultCharset()
     6      * @return
     7      * @throws UnsupportedEncodingException
     8      */
     9     public static String str2HexStr(String str,boolean lowerCase,String charset) throws UnsupportedEncodingException {
    10         return Hex.encodeHexString(str.getBytes(charset),lowerCase);
    11     }

    2.16进制字符串转换为普通字符串

       /**
         * 将16进制字符串转换为普通字符串
         * @param hexStr 16进制字符串
         * @param charset 编码格式 可不传默认为Charset.defaultCharset()
         * @return
         * @throws DecoderException
         * @throws UnsupportedEncodingException
         */
        public static String hexStr2Str(String hexStr,String charset) throws DecoderException, UnsupportedEncodingException {
            byte[] bytes = Hex.decodeHex(hexStr);
            return new String(bytes,charset);
        }

    3. 16进制字符串转换为byte数组

    1    /**
    2      * 将16进制字符串转换为byte数组
    3      * @param hexItr 16进制字符串
    4      * @return
    5      */
    6     public static byte[] hexItr2Arr(String hexItr) throws DecoderException {
    7         return Hex.decodeHex(hexItr);
    8     }

    4. byte数组转换为16进制字符串

    1    /**
    2      * byte数组转化为16进制字符串
    3      * @param arr 数组
    4      * @param lowerCase 转换后的字母为是否为小写 可不传默认为true
    5      * @return
    6      */
    7     public static String arr2HexStr(byte[] arr,boolean lowerCase){
    8         return Hex.encodeHexString(arr, lowerCase);
    9     }

    5. 将普通字符串转换为指定编码格式的byte数组

     1    /**
     2      * 将普通字符串转换为指定格式的byte数组
     3      * @param str 普通字符串
     4      * @param charset 编码格式 可不传默认为Charset.defaultCharset()
     5      * @return
     6      * @throws UnsupportedEncodingException
     7      */
     8     public static byte[] str2Arr(String str,String charset) throws UnsupportedEncodingException {
     9         return str.getBytes(charset);
    10     }

    6. 将byte数组转换为指定编码格式的普通字符串

     1     /**
     2      * 将byte数组转换为指定编码格式的普通字符串
     3      * @param arr byte数组
     4      * @param charset 编码格式 可不传默认为Charset.defaultCharset()
     5      * @return
     6      * @throws UnsupportedEncodingException
     7      */
     8     public static String arr2Str(byte[] arr,String charset) throws UnsupportedEncodingException {
     9         return new String(arr,charset);
    10     }
  • 相关阅读:
    win10 uwp 弹起键盘不隐藏界面元素
    win10 uwp 存放网络图片到本地
    win10 uwp 存放网络图片到本地
    sublime Text 正则替换
    sublime Text 正则替换
    win10 uwp 绘图 Line 控件使用
    win10 uwp 绘图 Line 控件使用
    AJAX 是什么?
    什么是 PHP SimpleXML?
    PHP XML DOM:DOM 是什么?
  • 原文地址:https://www.cnblogs.com/hetutu-5238/p/10648116.html
Copyright © 2011-2022 走看看