| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 548 人关注过本帖
标题:struts2 文件下载 问题
只看楼主 加入收藏
heqingkelly
Rank: 2
等 级:论坛游民
帖 子:27
专家分:80
注 册:2010-9-26
结帖率:100%
收藏
 问题点数:0 回复次数:1 
struts2 文件下载 问题
我写了个文件下载,我想用<s:iterator>标签遍历一个文件夹下的文件,
每个文件后有个下载链接,点击“下载”,就可以下载到硬盘上了,struts.xml,
Filedownload.java ,都写好了,就是jsp不知怎么写,主要是标签不会用,
而且也不知道这下载是的路径怎么定的,如果大家有空就帮我看看,谢谢!

struts.xml
程序代码:
<struts>
    <constant name="struts.devMode" value="true" />
    <constant name="struts.i18n.encoding" value="GBK"/>
    <package name="default" namespace="/" extends="struts-default">
        <action name="filedownload" class="com.heqing.action.Filedownload">
       
        <!--<interceptors>  
            <interceptor name="downloadinterceptor" 
                class="com.dingxun.download.DownloadInterceptor">  
            </interceptor>  
            <interceptor-stack name="myinterceptor">  
                <interceptor-ref name="downloadinterceptor" />  
                <interceptor-ref name="defaultStack"></interceptor-ref>  
            </interceptor-stack>  
        </interceptors>  
-->

            <param name="fileName"></param>   <!-- 设置文件名参数,由页面上传入 -->   
            <result name="success" type="stream">  
                <param name="contentType">application/octet-stream</param>   <!-- 下载文件类型定义 -->  
                <param name="contentDisposition">       <!-- 下载文件处理方法 -->
                    attachment;filename="${downloadChineseFileName}" 
                </param>  
                <param name="inputName">downloadFile</param>  <!-- 下载文件输出流定义 -->
            </result>  
        </action>
    </package>
</struts>

Filedownload.java
程序代码:
import import import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class Filedownload extends ActionSupport {
    // 下载文件原始存放路径
    private final static String DOWNLOADFILEPATH = "/";
    // 文件名参数变量
    private String fileName;

    public String getFileName() {
        return fileName;
    }

    public void setFileName(String fileName) {
        this.fileName = fileName;
    }

    // 从下载文件原始存放路径读取得到文件输出流
    public InputStream getDownloadFile() {
        return ServletActionContext.getServletContext().getResourceAsStream(DOWNLOADFILEPATH + fileName);
    }

    // 如果下载文件名为中文,进行字符编码转换
    public String getDownloadChineseFileName() {
        String downloadChineseFileName = fileName;

        try {
            downloadChineseFileName = new String(downloadChineseFileName
                    .getBytes(), "ISO8859-1");
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }

        return downloadChineseFileName;
    }

    public String execute() {
        return SUCCESS;
    }
}




[ 本帖最后由 heqingkelly 于 2010-10-7 03:17 编辑 ]
搜索更多相关主题的帖子: 文件 
2010-10-06 18:14
heqingkelly
Rank: 2
等 级:论坛游民
帖 子:27
专家分:80
注 册:2010-9-26
收藏
得分:0 
为了把悬赏分增加,我又重新发表了一个,请会的人帮帮我,非常感谢!我已经做了好长时间了
2010-10-07 03:26
快速回复:struts2 文件下载 问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023537 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved