package com.zhongzheng.common.utils; import com.aliyun.dysmsapi20170525.models.SendSmsRequest; import com.aliyun.dysmsapi20170525.models.SendSmsResponse; import com.aliyun.teaopenapi.models.Config; import io.micrometer.core.lang.NonNull; import java.io.UnsupportedEncodingException; import java.nio.charset.StandardCharsets; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.util.Iterator; import java.util.Random; public class ToolsUtils { public static final int EMU_PER_PX = 9525; /** * 获取模块编码参数 */ public static String getSmsCode() { Random random = new Random(); String result=""; for (int i=0;i<6;i++) { result+=random.nextInt(10); } return result; } public static String join(@NonNull CharSequence delimiter, @NonNull Iterable tokens) { final Iterator it = tokens.iterator(); if (!it.hasNext()) { return ""; } final StringBuilder sb = new StringBuilder(); sb.append(it.next()); while (it.hasNext()) { sb.append(delimiter); sb.append(it.next()); } return sb.toString(); } public static final int emuToPx(double emu) { return DoubleUtils.div(emu, EMU_PER_PX).intValue(); } public static String getEncoding(String str) { String encode = "GB2312"; try { if (str.equals(new String(str.getBytes(encode), encode))) { String s = encode; return s; } } catch (Exception exception) { } encode = "ISO-8859-1"; try { if (str.equals(new String(str.getBytes(encode), encode))) { String s1 = encode; return s1; } } catch (Exception exception1) { } encode = "UTF-8"; try { if (str.equals(new String(str.getBytes(encode), encode))) { String s2 = encode; return s2; } } catch (Exception exception2) { } encode = "GBK"; try { if (str.equals(new String(str.getBytes(encode), encode))) { String s3 = encode; return s3; } } catch (Exception exception3) { } return ""; } /** * 字符串转换UTF-8编码 * * @param string 字符串 * @return java.lang.String * @date 2022/4/14. */ public static String toUtf8String(String string) { StringBuilder stringBuffer = new StringBuilder(); for (int i = 0; i < string.length(); i++) { char c = string.charAt(i); if (c <= 255) { stringBuffer.append(c); } else { byte[] b; try { b = Character.toString(c).getBytes(StandardCharsets.UTF_8); } catch (Exception ex) { b = new byte[0]; } for (int value : b) { int k = value; if (k < 0) k += 256; stringBuffer.append("%").append(Integer.toHexString(k).toUpperCase()); } } } return stringBuffer.toString(); } public static String StringToMd5(String psw) { { try { MessageDigest md5 = MessageDigest.getInstance("MD5"); md5.update(psw.getBytes("UTF-8")); byte[] encryption = md5.digest(); StringBuffer strBuf = new StringBuffer(); for (int i = 0; i < encryption.length; i++) { if (Integer.toHexString(0xff & encryption[i]).length() == 1) { strBuf.append("0").append(Integer.toHexString(0xff & encryption[i])); } else { strBuf.append(Integer.toHexString(0xff & encryption[i])); } } return strBuf.toString(); } catch (NoSuchAlgorithmException e) { return ""; } catch (UnsupportedEncodingException e) { return ""; } } } public static String getCharAndNumr(int length) { Random random = new Random(); StringBuffer valSb = new StringBuffer(); String charStr = "0123456789abcdefghijklmnopqrstuvwxyz"; int charLength = charStr.length(); for (int i = 0; i < length; i++) { int index = random.nextInt(charLength); valSb.append(charStr.charAt(index)); } return valSb.toString(); } }