package com.netease.nim.uikit.common.util.string; import android.text.TextUtils; import java.util.Locale; import java.util.UUID; public class StringUtil { public static String getPercentString(float percent) { return String.format(Locale.US, "%d%%", (int) (percent * 100)); } /** * 删除字符串中的空白符 * * @param content * @return String */ public static String removeBlanks(String content) { if (content == null) { return null; } StringBuilder buff = new StringBuilder(); buff.append(content); for (int i = buff.length() - 1; i >= 0; i--) { if (' ' == buff.charAt(i) || ('\n' == buff.charAt(i)) || ('\t' == buff.charAt(i)) || ('\r' == buff.charAt(i))) { buff.deleteCharAt(i); } } return buff.toString(); } /** * 获取32位uuid * * @return */ public static String get32UUID() { return UUID.randomUUID().toString().replaceAll("-", ""); } public static boolean isEmpty(String input) { return TextUtils.isEmpty(input); } /** * 生成唯一号 * * @return */ public static String get36UUID() { UUID uuid = UUID.randomUUID(); String uniqueId = uuid.toString(); return uniqueId; } public static String makeMd5(String source) { return MD5.getStringMD5(source); } public static final String filterUCS4(String str) { if (TextUtils.isEmpty(str)) { return str; } if (str.codePointCount(0, str.length()) == str.length()) { return str; } StringBuilder sb = new StringBuilder(); int index = 0; while (index < str.length()) { int codePoint = str.codePointAt(index); index += Character.charCount(codePoint); if (Character.isSupplementaryCodePoint(codePoint)) { continue; } sb.appendCodePoint(codePoint); } return sb.toString(); } /** * counter ASCII character as one, otherwise two * * @param str * @return count */ public static int counterChars(String str) { // return if (TextUtils.isEmpty(str)) { return 0; } int count = 0; for (int i = 0; i < str.length(); i++) { int tmp = (int) str.charAt(i); if (tmp > 0 && tmp < 127) { count += 1; } else { count += 2; } } return count; } }