解决问题 提示信息乱码问题

修改前的代码如下:

   public static void historyBack(HttpServletResponse response,String v){

              try{

                      

                        String exportString="<script>alert('"+getString(v)+"');history.back();</script>";

                          System.out.println("v is :"+getString(v));

                            System.out.println("getString(v)is :"+getString(v));

                            byte[] temp = exportString.getBytes();

                            String comm = new String(temp,"iso-8859-1");

                      //response.setContentType("text/html");

                 //response.setHeader("Content-disposition","attachment;filename=download.xls");

                      PrintWriter out = response.getWriter();

                     out.print(comm);

                     out.close();                  

              }catch(Exception e){

                     return;

              }

       }

 

部分代码修改如下:

       public static void historyBack(HttpServletResponse response,String v){

              try{

                       // 修改  2006--07-18

                        response.setCharacterEncoding("GBK");

                        String strV = getString(v);

                        System.out.println("V historyBack is :"+v);

                       

                        //String exportString="<script>alert('"+getString(v)+"');history.back();</script>";

                         String exportString="<script>alert('"+v+"');history.back();</script>";

                            System.out.println("v is :"+getString(v));

                            System.out.println("getString(v)is :"+getString(v));

                            byte[] temp = exportString.getBytes();

                             // 修改  2006--07-18

                     // String comm = new String(temp,"iso-8859-1");

                            String comm = new String(temp,"GBK");

                      //response.setContentType("text/html");

                     // response.setHeader("Content-disposition", "attachment;filename=download.xls");

                      PrintWriter out = response.getWriter();

                     out.print(comm);

                     out.close();                  

              }catch(Exception e){

                     return;

              }

       }

在这个代码当中只所以会出现JavaScript提示框为乱码,主要原因是在java的输出流当中。采用了iso-8859-1编码。这对java程序没有问题,如果没有在java程序中嵌入JavaScript提示框,可以才有iso-8859-1GBK编码,但是对JavaScript程序却不行,必须用GBK编码。这是由于JavaJavascript采用的编码机制不同造成的。

还有就是这里在处理请求和响应的数据之前,对请求和响应流进行了编码转换。可以解决编码转换问题。

// 修改  2006--07-18

                        response.setCharacterEncoding("GBK");

                        //String strV = getString(v);

                        System.out.println("V historyBack is :"+v);

                                                                  20067 18

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值