如何使用Hutool判断文字编码并转义Unicode
可以使用Hutool的CharsetUtil类的方法判断文字是否属于某种编码格式,然后结合UnicodeUtil类的方法进行转义。
具体实现代码如下:
import cn.hutool.core.util.CharsetUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.core.util.UnicodeUtil;
public class Test {
public static void main(String[] args) {
String text = 'BRITÂNIA COMPONENTES ELETRÔNICOS LTDA';
String gbkStr = CharsetUtil.convert(text, CharsetUtil.CHARSET_GBK);
if (StrUtil.containsIgnoreCase(gbkStr, '?')) { // 判断是否存在不属于GBK编码的文字
String unicodeStr = UnicodeUtil.toUnicode(text); // 转义Unicode
System.out.println(unicodeStr);
} else {
System.out.println(text);
}
}
}
在上面的代码中,先使用CharsetUtil将原始文本转换成GBK编码的字符串,然后判断是否存在'?'这个字符,如果存在则说明原始文本中存在不属于GBK编码的文字。接着使用UnicodeUtil将原始文本转义成Unicode编码的字符串,否则直接输出原始文本。
原文地址: https://www.cveoy.top/t/topic/ofGe 著作权归作者所有。请勿转载和采集!