1
0
mirror of https://gitee.com/mirrors/Spring-Cloud-Alibaba.git synced 2021-06-26 13:25:11 +08:00

fixed - Unicode encoding , exclude base latin letter.

This commit is contained in:
zkzlx 2021-01-25 18:13:19 +08:00
parent bf08ab3110
commit 62398e1bc2

View File

@ -21,7 +21,7 @@ package com.alibaba.cloud.nacos.utils;
*/
public final class NacosConfigUtils {
private NacosConfigUtils(){
private NacosConfigUtils() {
}
/**
@ -33,16 +33,26 @@ public final class NacosConfigUtils {
StringBuilder sb = new StringBuilder();
char[] chars = configValue.toCharArray();
for (char aChar : chars) {
if (isChinese(aChar)) {
sb.append("\\u").append(Integer.toHexString(aChar));
if (isBaseLetter(aChar)) {
sb.append(aChar);
}
else {
sb.append(aChar);
sb.append(String.format("\\u%04x", (int) aChar));
}
}
return sb.toString();
}
/**
* char is base latin or whitespace?
* @param ch a character
* @return true or false
*/
public static boolean isBaseLetter(char ch) {
Character.UnicodeBlock ub = Character.UnicodeBlock.of(ch);
return ub == Character.UnicodeBlock.BASIC_LATIN || Character.isWhitespace(ch);
}
/**
* char is chinese?
* @param c a character