java字节码、十六进制、python字节码相互转换
def pb2jb(byte_arr): """ python字节码转java字节码 :param byte_arr: :return: """ return [int(i) - 256 if int(i) > 127 else int(i) for i in byte_arr] def jb2pb(byte_arr): """ java 字节码转python字节码 :return: """ return [i + 256 if i < 0 else i for i in byte_arr] def hex2jb(hex_str): """ 十六进制数据转java字节码 eg: hex_str = "22 4c 65 6f 69 65 22 20" :return: """ return [int(i, 16) - 256 if int(i, 16) > 127 else int(i, 16) for i in hex_str.split(" ")] def hex2pb(hex_str): """ 十六进制数据转python字节码 eg: hex_str = "22 4c 65 6f 69 65 22 20" :return: """ return [int(i, 16) for i in hex_str.split(" ")] def pb2str(byte_arr, encoding="utf-8"): """ python字节码转str :return: """ return bytes(byte_arr).decode(encoding) def jb2str(byte_arr, encoding="utf-8"): """ java字节码转str :return: """ return bytes(jb2pb(byte_arr)).decode(encoding) def hex2str(hex_str, encoding="utf-8"): """ hex转str :param hex_str: "22 4c 65 6f 69 65 22 20" :param encoding: :return: """ return bytes(hex2pb(hex_str)).decode(encoding)
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步