import java.io.UnsupportedEncodingException;/*** @author lmg* @version v1.0* @Description* @date 2020-12-16 17:08*/
public class Utils {/*** 把16进制的转字符串* @param s* @return*/public static String hexToStringGBK(String s){String tmp = null;byte[] baKeyword = new byte[s.length() / 2];for (int i = 0; i < baKeyword.length; i++) {try {baKeyword[i] = (byte) (0xff & Integer.parseInt(s.substring(i * 2, i * 2 + 2), 16));} catch (Exception e) {e.printStackTrace();return "";}}try {tmp = new String(baKeyword, "GBK");// UTF-16le:Not} catch (Exception e1) {e1.printStackTrace();}return tmp;}/*** 将字符串转为指定编码的16进制** @param str* @return*/public static String strToHexStr(String str)  {String hexString = "0123456789ABCDEF";//根据编码获取字节数组byte[] bytes = new byte[0];try {bytes = str.getBytes("GBK");} catch (UnsupportedEncodingException e) {e.printStackTrace();}StringBuilder sb = new StringBuilder(bytes.length * 2);//将字节数组中每个字节拆解成2位16进制整数for (int i = 0; i < bytes.length; i++) {sb.append(hexString.charAt((bytes[i] & 0xf0) >> 4));sb.append(hexString.charAt((bytes[i] & 0x0f) >> 0));}return sb.toString();}/*** 汉字转换成 gb2312 的ascii码** @param str* @return* @throws Exception*/public static String wordToAsciiGB2312(String str){try {byte[] temp = str.getBytes("utf-8"); //这里写原编码的方式byte[] bArray = new String(temp, "utf-8").getBytes("gbk");//这里转换后的编码方式StringBuffer sb = new StringBuffer(bArray.length);for (int i = 0; i < bArray.length; i++) {String sTemp = Integer.toHexString(0xFF & bArray[i]);if (sTemp.length() < 2)sb.append(0);sb.append(sTemp.toUpperCase());}return sb.toString();}catch (Exception e){e.printStackTrace();return null;}}/*** byte[]转十六进制字符串* @param bytes* @return*/public static String bytesToHex(byte[] bytes) {StringBuilder buf = new StringBuilder(bytes.length * 2);for(byte b : bytes) { // 使用String的format方法进行转换buf.append(String.format("%02X", new Integer(b & 0xff)));}return buf.toString();}/*** 将16进制字符串转换为byte[]** @param str* @return*/public static byte[] toBytes(String str) {if(str == null || str.trim().equals("")) {return new byte[0];}byte[] bytes = new byte[str.length() / 2];for(int i = 0; i < str.length() / 2; i++) {String subStr = str.substring(i * 2, i * 2 + 2);bytes[i] = (byte) Integer.parseInt(subStr, 16);}return bytes;}/*** 16进制数据取反* @return*/public static String reverse(String data){byte[] abts = toBytes(data);String sTemp="";for (int i = 0; i < abts.length; i++) {sTemp  += String.format("%02X",0xFF &~ abts[i]);}return sTemp.toUpperCase();}/*** Md5数据加密* @return*/public final static String toMD5(String s) {char hexDigits[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9','A', 'B', 'C', 'D', 'E', 'F'};try {byte[] strTemp = s.getBytes("UTF-8");MessageDigest mdTemp = MessageDigest.getInstance("MD5");mdTemp.update(strTemp);byte[] md = mdTemp.digest();int j = md.length;char str[] = new char[j * 2];int k = 0;for (int i = 0; i < j; i++) {byte byte0 = md[i];str[k++] = hexDigits[byte0 >>> 4 & 0xF];str[k++] = hexDigits[byte0 & 0xF];}return new String(str);} catch (Exception e) {e.printStackTrace();return null;}}}

GBK编码转换及Md5算法工具相关推荐

  1. C#怎么将GBK编码转换成UTF-8编码?

    C#怎么将GBK编码转换成UTF-8编码? private void ChangeEncode(Encoding fromCoding,Encoding toCoding,string fileNam ...

  2. html转换编码格式,html编码转换 html编码设置utf gbk编码转换图文教程

    html编码转换 html编码设置utf gbk编码转换图文教程篇 常用HTML编码之urf-8编码转换为gb2312编码或者gb2312转换为utf-8编码快速转换设置,这里DIVCSS5介绍使用D ...

  3. java url gbk编码转换_如何在一个utf-8编码的HTML中 在javascript中url跳转时把url中的汉字改为GBK编码...

    展开全部 html文件中私用32313133353236313431303231363533e78988e69d8331333337623465JavaScript将url的汉子转为为GBK编码,主要 ...

  4. php 读取或导出到Excel / CSV (附utf8、gbk 编码转换)

    链接:CSV 导入mysql 数据库 php导入到excel-支持utf8和gbk两种编码 php导入到excel乱码是因为utf8编码在xp系统不支持所有utf8编码转码一下就完美解决了 utf-8 ...

  5. JS十六进制,CRC冗余,小程序发送蓝牙数据,十六进制GBK编码转换等

    小程序问题:https://kf.qq.com/faq/170705YVZFZZ170705eyI7Rr.html 1.十六进制大端转小端 //十六进制大端转小端dataConversion(data ...

  6. html实体编码转换工具,编码字符串转换工具(CodeView)

    UTF16,UTF32,UNICODE,ANSI,CP54936编码字符串转换工具.例如:在工具中输入"我是中国人",UTF16,UTF32,UNICODE,ANSI,CP5493 ...

  7. MD5算法原理及其实现

    什么是MD5算法 MD5讯息摘要演算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码杂凑函数,可以产生出一个128位元(16位元组)的散列值(hash val ...

  8. 【学习笔记】一个关于utf8编码转换的问题

    [学习笔记]一个关于utf8编码转换的问题 在验证某些东西时,需要使用到中文对应的utf8编码,就到网上搜索了utf8编码转换的一些在线工具,发现了些问题. 百度第一页所有的utf8编码在线转换转换出 ...

  9. mysql编码转换工具_MySQL GBK→UTF-8编码转换

    MySQL GBK→UTF-8编码转换 2021-01-23 11:20:21483 前言: 第一次写教程,其实算不得教程,只是想总结个转换的手记.如果中间有错误,或者办法不够理想,大家回贴研究下. ...

  10. 单片机中UTF-8如何转换得到GBK编码

    概述 我们在单片机开发中常会遇到需要将UTF-8转换为GBK编码的需求. 在我们了解各种编码格式的情况下可知, UFT-8不能直接转成GBK,需中转成unicode再转换为gbk.而unicode和g ...

最新文章

  1. 清华大学王玉计算机,王玉珏(清华大学环境学院教授)_百度百科
  2. android 控件监听方法,Android界面控件(2)—注册点击事件监听器
  3. linux性能记录,Linux性能记录
  4. go 默认http版本_【每日一库】超赞的 Go 语言 INI 文件操作
  5. MATLAB教程(1) MATLAB 基础知识(4)
  6. 四川大学c语言真题及答案新课标,四川大学C语言2003年真题_跨考网
  7. git只提交一张图片_即使只使用一张静止的图片,也能制作出带有动感天空的视频...
  8. 用python自动办公 百度_用Python自动办公,做职场高手,16章完整版百度云盘
  9. 比特币被盗事件频发,这次是 6300 万美元
  10. 设置按钮背景为透明去掉button按钮左右两边的留白
  11. 我们公司不会用分布式事务!
  12. python 科大讯飞 语音转文字 输出干活
  13. Nuxt.js mini聊天室代码
  14. 互联网寒冬下,为什么就你被裁了?
  15. LED显示行业之知识大全3
  16. 孤独求败:美国海军邀黑客“黑掉军舰”
  17. Unity 2D打地鼠小游戏
  18. 数据变现四大模式释放电信大数据价值
  19. IOS 地图导航(其中包括苹果地图、百度地图、高德地图、谷歌地图)
  20. 查询最近12个月的数据SQL语句

热门文章

  1. 海美迪盒子android升级包,海美迪H5固件升级ROM系统刷机包下载_刷机教程
  2. 移动机顶盒cm211-1 刷机
  3. [软件工程] 面向对象方法学引论
  4. 好用的linux连接工具
  5. 西北农林科技大学研究生学位论文“参考文献”著录规则
  6. 《游戏引擎架构》中英词汇索引表
  7. 使用PID和LQR控制器进行多旋翼飞行器控制
  8. GNSS NMEA-0183协议解析
  9. Modbus是什么?与RS485协议区别与联系有哪些
  10. C语言中的指针与下标,C语言下标和指针的关系