Сегодня мне пришлось экранировать URL (http://rfc3986.openrfc.org/ - например, заменить символ «пробел» на% 20), и неожиданно я не смог найти API в Java, который бы принял неэкранированный URL в качестве 1 параметра и возвратил экранированный URL.
Мне известен класс URI, который способен выполнять операцию экранирования, однако требуется использовать многоаргументный конструктор (http://download.oracle.com/javase/1.4.2/docs/api/java/net/URI.html#URI(java.lang.String, java.lang.String, java.lang.String, int, java.lang.String, java. lang.String, java.lang.String)), используя конструктор с одним аргументом, просто не выполняет экранирование, но выдает исключение.
К счастью, я уже добавил библиотеку JRuby, поэтому я смог использовать метод URI.escape http://www.ruby -doc.org / stdlib / libdoc / uri / rdoc / classes / URI / Escape.html однако я очень удивлен, что в Java нет простого способа добиться такого же эффекта.
Мне не хватает API?