Java 如何在BufferReader处理后返回URLEncoded特性以解码和显示特殊字符?

Java 如何在BufferReader处理后返回URLEncoded特性以解码和显示特殊字符?,java,bufferedreader,urlencode,stringescapeutils,Java,Bufferedreader,Urlencode,Stringescapeutils,页面URL是“//主机:port/abc/testr email.html?ans1=NÃO&ans2=NÃO&ans3=NÃO&ans4=SIM&ans5=NÃO&cntr=1&ts=5&pname=TAAA” 使用URLEncoder.encode(字符串,“UTF-8”)如下所示,带有转义/编码的特殊字符 pagepath = "//host:port/abc/testr-email.html?ans1=N%C3%83O&ans2=N%C3%83O&ans3=N%C3%83

页面URL是“
//主机:port/abc/testr email.html?ans1=NÃO&ans2=NÃO&ans3=NÃO&ans4=SIM&ans5=NÃO&cntr=1&ts=5&pname=TAAA
” 使用URLEncoder.encode(字符串,“UTF-8”)如下所示,带有转义/编码的特殊字符

pagepath = "//host:port/abc/testr-email.html?ans1=N%C3%83O&ans2=N%C3%83O&ans3=N%C3%83O&ans4=SIM&ans5=N%C3%83O&counter=1&totalquestions=5&participantname=TAAA"
下面是我的代码片段,我试图读取的页面内容有一些特殊的字符值,如“NÃO”,在bufferreader过程解码并将值发送到电子邮件正文后,这些字符的编码特性将丢失

代码片段:

url = new URL(pagepath);
 URI uri = new URI(url.getProtocol(), url.getUserInfo(), url.getHost(), url.getPort(), url.getPath(), url.getQuery(), url.getRef());            
            url = uri.toURL();
            URLConnection conn = url.openConnection(); 
            BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));
            String inputLine;
            StringBuilder content = new StringBuilder();
            while ((inputLine = br.readLine()) != null) {               
                byte[] byte1 = inputLine.getBytes("UTF-8");
                String sample=new String(byte1, "UTF-8");
                log.info("sample Content ==>" + StringEscapeUtils.unescapeHtml4(sample));
                content.append(sample);

Where the content is an a StringBuilder as below            


StringBuilder content = new StringBuilder();
BufferedReader丢失URLEncoded功能后的内容将转换回我的特殊字符进行解码并将其用于电子邮件

String tempstring = StringEscapeUtils.unescapeHtml4(content.toString());
                email.setHtmlMsg(tempstring);
我注意到email.setHtmlMsg(…)。没有我的“NÃO”特殊字符,它已转义为“N%C3%83O

如何在“发送电子邮件”功能中获取特殊字符并将其发送到HTML邮件正文

使用
urldecker
从编码字符串中获取特殊字符。试试下面的语句

URLDecoder.decode("N%C3%83O", "UTF-8")