java servlet http url request



当我从Java应用程序运行此代码时,我得到了正确的响应(UTF-8编码)。

问题是,当我从我的servlet运行它时,我得到:

"פ×× ̃ות ×"×

× ×"×ª×—×›×•× ×"מו××œ× © ™ © ×œ× ×•× × ̈×"ו ×"× ×× ̈ פ××× ̈ו ×"×" וי ™ ™× צ'× ™ ™

知道如何解决它吗?

  URL url;
  HttpURLConnection conn;
  BufferedReader rd;
  String line;
  String result = "";
  try {
     url=new URL("http://www.walla.co.il");
      conn = (HttpURLConnection) url.openConnection();
     conn.setRequestMethod("GET");
     rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
       StringBuffer sb = new StringBuffer("");
            String s1="";
            String NL = System.getProperty("line.separator");
            while ((s1 = rd.readLine()) != null) 
                sb.append(s1+NL);
      System.out.println(sb);
     rd.close();
     return sb.toString();
  } catch (IOException e) {
     e.printStackTrace();
  } catch (Exception e) {
     e.printStackTrace();
  }
return "";

set "JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=UTF8"

我从我的 tomcat\bin 中的 *.bat 文件运行它它解决了我似乎必须为Tomcat/JVM设置编码的问题不是 100% 确定,但它现在可以工作:)

最新更新