Разбор HTML в Java

В основном, если у меня есть строка, которая выглядит так:

%22Hello+World+%26+Hello+World%22

потому что я взял его из HTML, как мне заставить Java сказать «Hello World» и «Hello World», то есть заменить фрагменты HTML текстом?

Спасибо


person JPC    schedule 10.12.2010    source источник


Ответы (1)


URL-декодер:

java.net.URLDecoder.decode("%22Hello+World+%26+Hello+World%22", "UTF-8")

Обновление: изменено для передачи кодировки в качестве второго параметра.

person Kirk Woll    schedule 10.12.2010
comment
Спасибо! это сделало это ... за исключением того, что это устарело ... есть ли лучший способ? - person JPC; 10.12.2010
comment
@JPC, я обновил свой ответ, чтобы передать кодировку. Эта версия метода не устарела. - person Kirk Woll; 10.12.2010
comment
@JPC Если вы читали JavaDocs для метода в документе, на который ссылается Dancrumb, вы могли заметить, что устаревший метод имеет текст Устаревший. Результирующая строка может отличаться в зависимости от кодировки платформы по умолчанию. Вместо этого используйте метод decode(String,String) для указания кодировки. Или, говоря другим и более грубым способом, в будущем попробуйте RTFM. - person Andrew Thompson; 10.12.2010