У меня проблемы с созданием URL-адреса со строковыми данными без специальных символов для вызова в веб-сервисе googlemaps, поэтому, как я нашел, некоторые символы, такие как @, # $%, выходят в виде% hex кода ascii.
Чтобы удалить нежелательные символы и пробелы, я использовал следующий метод:
URLEncoder.encode (
Normalizer.normalize (text, Normalizer.Form.NFD) .replaceAll ("[^ \\ p {ASCII}]", ""), "UTF-8");
Однако при создании URL я столкнулся с форматированием, как описано в приведенном ниже примере:
Введите:
"Comendador Araújo Street, 987"
Выход:
"Улица + Comendador + Araujo% 2C + 987"
И выдается следующее исключение:
java.util.MissingFormatArgumentException: Format specifier '% 2C'
00: 37: 39,294 ERROR [stderr] (default task-3) at java.util.Formatter.format (Formatter.java:2519)
00: 37: 39,343 ERROR [stderr] (default task-3) at java.util.Formatter.format (Formatter.java:2455)
00: 37: 39,390 ERROR [stderr] (default task-3) at java.lang.String.format (String.java:2940) ...
Другие символы, как. * _ - та же проблема не возникает.
Может кто-нибудь помочь мне с этой проблемой?
Благодарный