\u0421\u0430\u0439\u0434\u0438\u043d\u0433 Country Standart 3 \u043c \u0446\u0432\u0435\u0442 \u0441\u0432\u0435\u0442\u043b\u043e-\u0437\u0435\u043b\u0451\u043d…
как из этой строки получить строку, понятную простому человеку? Вот что у меня на данный момент есть, но оно не работает корретно(
public String unicodeDecode(String myString){
String[] strs = myString.split(" ");
String text = "";
for (String str : strs) {
if (str.contains("\\u") && !str.contains(".") && !str.contains(",") && !str.contains("-") && !str.contains("&") && !str.contains(";") ) {
str = str.replace("\\", "");
String[] arr = str.split("u");
for (int i = 1; i < arr.length; i++) {
int hexVal = Integer.parseInt(arr[i], 16);
text += (char) hexVal;
}
text += " ";
}
else {
text += str + " ";
}
}
return text;
}
Тут используется регулярка для поиска юникодных последовательностей, которые будут превращены в понятные буквы.
Проверьте:
String text = "\\u0421\\u0430\\u0439\\u0434\\u0438\\u043d\\u0433 Country Standart 3 \\u043c \\u0446\\u0432\\u0435\\u0442 \\u0441\\u0432\\u0435\\u0442\\u043b\\u043e-\\u0437\\u0435\\u043b\\u0451\\u043d…";
// Set нужен, чтобы исключить дубликаты
Set<String> hexItems = new HashSet<>();
Matcher m = Pattern.compile("\\\\u[a-fA-f0-9]{4}").matcher(text);
while (m.find()) {
hexItems.add(m.group());
}
System.out.println(hexItems); // [\u0437, \u0439, \u0438, \u043c, \u043b, \u043e, \u043d, ...
// Перебор для замены
for (String unicodeHex : hexItems) {
int hexVal = Integer.parseInt(unicodeHex.substring(2), 16);
text = text.replace(unicodeHex, "" + ((char) hexVal));
}
System.out.println(text); // Сайдинг Country Standart 3 м цвет светло-зелён…
String utf8Text = "\u0421\u0430\u0439\u0434\u0438\u043d\u0433 Country Standart 3 \u043c \u0446\u0432\u0435\u0442 \u0441\u0432\u0435\u0442\u043b\u043e-\u0437\u0435\u043b\u0451\u043d&hellip";
byte[] bytes = utf8Text.getBytes(StandardCharsets.UTF_8);
String text = new String(bytes, StandardCharsets.UTF_8);
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости