Вопрос:
Я разрабатываю приложение для Android, которое получает URL-адрес изображения с сервера Java, загружает изображение, а затем отображает его
после получения ответа сервера я получаю эту ошибку
java.net.URISyntaxException: Illegal character in scheme at index 0: http://farm1.static.flickr.com/131/371306796_7e18d505fb_b.jpg
Итак, как решить эту проблему?
Ответ №1
Как вы видите, в этом URL-адресе есть пробел:
“ http://farm1.static.flickr.com/131/371306796_7e18d505fb_b.jpg”
Итак, как решить эту проблему?
Вероятно, удаление пространства исправит его.
Ответ №2
Класс java.net.URI может помочь; в документации по URL-адресу вы найдете
Примечание. В определенных случаях класс URI выполняет экранирование полей компонента. Рекомендуемым способом управления кодированием и расшифровкой URL-адресов является использование URI
Используйте один из конструкторов с несколькими аргументами, например:
URI uri = new URI( «http», «http://farm1.static.flickr.com», «/131/371306796_7e18d505fb_b.jpgf», null); URL url = uri.toURL();
конструктор с одним аргументом URI НЕ пропускает незаконные символы