• 字节流、字符串、16进制字符串转换__java


    package com.dvn.li.main;

    /**
    * @Package:
    * @ClassName:TypeConversion
    * @Description:字节流、字符串、16进制字符串转换
    * @author:xk
    * @date:Jan 8, 2013 5:00:08 PM
    */
    public class TypeConversion {
    /**
    * @Title:bytes2HexString
    * @Description:字节数组转16进制字符串
    * @param b
    * 字节数组
    * @return 16进制字符串
    * @throws
    */
    public static String bytes2HexString(byte[] b) {
    StringBuffer result = new StringBuffer();
    String hex;
    for (int i = 0; i < b.length; i++) {
    hex = Integer.toHexString(b[i] & 0xFF);
    if (hex.length() == 1) {
    hex = '0' + hex;
    }
    result.append(hex.toUpperCase());
    }
    return result.toString();
    }

    /**
    * @Title:hexString2Bytes
    * @Description:16进制字符串转字节数组
    * @param src
    * 16进制字符串
    * @return 字节数组
    * @throws
    */
    public static byte[] hexString2Bytes(String src) {
    int l = src.length() / 2;
    byte[] ret = new byte[l];
    for (int i = 0; i < l; i++) {
    ret[i] = (byte) Integer
    .valueOf(src.substring(i * 2, i * 2 + 2), 16).byteValue();
    }
    return ret;
    }

    /**
    * @Title:string2HexString
    * @Description:字符串转16进制字符串
    * @param strPart
    * 字符串
    * @return 16进制字符串
    * @throws
    */
    public static String string2HexString(String strPart) {
    StringBuffer hexString = new StringBuffer();
    for (int i = 0; i < strPart.length(); i++) {
    int ch = (int) strPart.charAt(i);
    String strHex = Integer.toHexString(ch);
    hexString.append(strHex);
    }
    return hexString.toString();
    }

    /**
    * @Title:hexString2String
    * @Description:16进制字符串转字符串
    * @param src
    * 16进制字符串
    * @return 字节数组
    * @throws
    */
    public static String hexString2String(String src) {
    String temp = "";
    for (int i = 0; i < src.length() / 2; i++) {
    temp = temp
    + (char) Integer.valueOf(src.substring(i * 2, i * 2 + 2),
    16).byteValue();
    }
    return temp;
    }

    /**
    * @Title:char2Byte
    * @Description:字符转成字节数据char-->integer-->byte
    * @param src
    * @return
    * @throws
    */
    public static Byte char2Byte(Character src) {
    return Integer.valueOf((int)src).byteValue();
    }

    /**
    * @Title:intToHexString
    * @Description:10进制数字转成16进制
    * @param a 转化数据
    * @param len 占用字节数
    * @return
    * @throws
    */
    private static String intToHexString(int a,int len){
    len<<=1;
    String hexString = Integer.toHexString(a);
    int b = len -hexString.length();
    if(b>0){
    for(int i=0;i<b;i++) {
    hexString = "0" + hexString;
    }
    }
    return hexString;
    }


    public static void main(String args[]) {
    System.out.println(hexString2String("3133383131313536373838"));
    }
    }

  • 相关阅读:
    PyQt5笔记之标签
    PyQt5笔记之布局管理
    PyQt5笔记之菜单栏
    Windows环境安装PyQt5
    MySQL8的密码策略
    find命令常用参数
    Linux性能监控工具
    Linux内核管理
    DNS简单配置
    Solr 5.2.1 部署并索引Mysql数据库
  • 原文地址:https://www.cnblogs.com/wudage/p/8601001.html
Copyright © 2020-2023  润新知