Предположим, у меня есть строка «F%c3%bcr%20alle» в XML-файле. Это следует перевести как «Für alle». Я могу выполнить экранирование с помощью JavaScript:
let decoded = decodeURIComponent("F%c3%bcr%20alle");
И с C#:
var decoded = HttpUtility.UrlDecode("F%c3%bcr%20alle");
Но мне нужен Java на Android. Я попробовал
String decoded = URLDecoder.decode("F%c3%bcr%20alle", StandardCharsets.UTF_8);
но результат - "Für alle".
Есть идеи?
Обновление: как отметил пользователь 85421, это не проблема Java URLDecoder.decode(), но реальная проблема, похоже, заключается в том, что Logcat не выводит UTF-8... ? Отладчик показывает ожидаемое значение во всплывающей подсказке.
Обновление: кто-то запросил пример XML...
/next/remote.php/dav/files/xyz/F%c3%bcr%20alle/
Подробнее здесь: https://stackoverflow.com/questions/798 ... m-xml-file