Проблемы со специальными символами: java.util.MissingFormatArgumentException: спецификатор формата - PullRequest
0 голосов
/ 14 сентября 2018

У меня проблемы с созданием 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) ...

Другие символы, как. * _ - та же проблема не возникает.

Может кто-нибудь помочь мне с этой проблемой?

Благодарный

...