程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> exception-ssh struts2下載問題?求破.....弄了一天了

exception-ssh struts2下載問題?求破.....弄了一天了

編輯:編程綜合問答
ssh struts2下載問題?求破.....弄了一天了

action 從前台頁面接受到文件名,傳到action裡的時候中文亂碼?
下載下來的文件名字亂碼.打開後內容頁亂碼?
前台從數據查出來的:下載/s:a
後台:
private String fileName;
private Datum d;(getter,setter給了)
public InputStream getInputStream() throws Exception{

    this.fileName=d.getDatumname();

    System.out.println(d.getDatumname());
    System.out.println(fileName);
    ServletActionContext.getResponse().setHeader("Content-Disposition","attachment;fileName="+java.net.URLEncoder.encode(fileName, "utf-8"));
    return ServletActionContext.getServletContext().getResourceAsStream("upload"+"//"+fileName);

}

public String execute(){
    return SUCCESS;
}

}
struts.xml:

        <result name="success"  type="stream">
            <param name="contentType">application/octet-stream;charset=iso8599-1</param>
            <param name="inputName">inputStream</param>
            <param name="bufferSize">4096</param>  
            <param name="contentDisposition">attachment;filename="${fileName}"</param>
        </result>
    </action>
    這是哪兒出錯了啊?
    ssh,myeclips,tomcat7

最佳回答:


1 最好 把tomcat conf下面 的 servlet.xml 文件裡面 端口標簽裡面 加上URIEnCoding="UTF-8"

2 ServletActionContext.getRequest().setCharacterEncoding("UTF-8");//設置請求報文

ServletActionContext.getResponse().setCharacterEncoding("UTF-8");//設置響應報文

3 jsp參數值用encodeURIComponent這個;

var a = "中國";
a = encodeURIComponent(encodeURIComponent(a));

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved