当前位置: 首页 > news >正文

网站空间购买注意事项seo三人行网站

网站空间购买注意事项,seo三人行网站,做外贸怎么登陆国外网站,海豚一键做淘宝网站一个使用Servlet文件实现文件下载的实例(可以扩充本实例实现:对用户隐藏他要下载文件的路径,或者在下载文件时要做一些其他的工作,如检查用户有没有下载此文件的权限等)了解在Servlet中如何控制输出流以及response对象…

一个使用Servlet文件实现文件下载的实例

(可以扩充本实例实现:对用户隐藏他要下载文件的路径,或者在下载文件时要做一些其他的工作,如检查用户有没有下载此文件的权限等)

了解在Servlet中如何控制输出流以及response对象的contentType相关知识

一个Servlet文件DownloadFile,在此Servlet中读取要下载的文件,然后写到响应流中以达到用户下载文件的目的。要下载的文件可以放在任何地方,并且是对用户隐藏的。

在DownloadFile Servlet中,首先要得到要下载文件的文件名filename,同时要预先定义好文件保存的路径,然后设置response对象的内容类型和头信息,最后读取要下载文件的字节流并写到response的输出流中。

DownloadFile.java源文件

package myservlet;

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

public class DownloadFile extends HttpServlet {

//字符编码

private final String ENCODING="GB2312";

//内容类型

private final String CONTENT_TYPE="text/html;charset=gb2312";

//要下载的文件存放的路径

private String downloadfiledir="d:\\temp\\";

public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{

//设置request对象的字符编码

request.setCharacterEncoding(ENCODING);

//从request中取出要下载文件的名字

String filename=request.getParameter("filename");

if(filename==null||filename.trim().equals("")){

//设置response对象的ContentType

response.setContentType(CONTENT_TYPE);

//输出错误信息

PrintWriter out=response.getWriter();

out.println("<font color=red>输入的文件名无效!</font>");

out.close();

}else{

//下载文件的完整路径名

String fullfilename=downloadfiledir+filename;

System.out.println("下载文件:"+fullfilename);

//根据文件的类型设置response对象的ContentType

String contentType=getServletContext().getMimeType(fullfilename);

if(contentType==null)

contentType="application/octet-stream";

response.setContentType(contentType);

//设置response的头信息

response.setHeader("Content-disposition","attachment;filename=\""+filename+"\"");

InputStream is=null;

OutputStream os=null;

try{

is=new BufferedInputStream(new FileInputStream(fullfilename));

//定义输出字节流

ByteArrayOutputStream baos=new ByteArrayOutputStream();

//定义response的输出流

os=new BufferedOutputStream(response.getOutputStream());

//定义buffer

byte[] buffer=new byte[4*1024]; //4k Buffer

int read=0;

//从文件中读入数据并写到输出字节流中

while((read=is.read(buffer))!=-1){

baos.write(buffer,0,read);

}

//将输出字节流写到response的输出流中

os.write(baos.toByteArray());

}catch(IOException e){

e.printStackTrace();

}finally{

//关闭输出字节流和response输出流

os.close();

is.close();

}

}

}

public void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{

//调用doGet()方法

doGet(request,response);

}

}
http://www.lbrq.cn/news/2497861.html

相关文章:

  • 网站搭建是哪个岗位做的事儿网络营销的职能有哪些
  • 宁波网站制作一句话宣传自己的产品
  • 建设网站主机免费的怎么下载精准营销及推广
  • 怎么做国外的网站企业营销培训课程
  • axure直接做网站万物识别扫一扫
  • 刷单平台网站建设长春网站建设方案报价
  • 山东嘉邦家居用品公司网站 加盟做经销商多少钱 有人做过吗信息流广告代理商排名
  • asp网站 会员注册口碑营销的案例及分析
  • 用vs2010做免费网站模板下载个人推广网站
  • 网站开发技术 包括市场调研数据网站
  • 域名可以做网站网络建站流程
  • 中企动力官网电话优化关键词规则
  • 建设部网站有建筑施工分包sem与seo的区别
  • 做走私网站免费收录网站推广
  • 初中生学java兰州网络seo
  • 网站如何上传设计外包网站
  • 网站备案注意今日新闻摘抄十条
  • 山西网站建设电话金戈西地那非片
  • 网站模板 北京公司企业网站搜索优化网络推广
  • 徐汇网站制作设计韩国电视剧
  • 成都制作网页设计seo优化师培训
  • 经营性网站怎么备案知乎seo排名帝搜软件
  • 陕西泰烜建设集团网站windows优化大师有毒吗
  • wordpress 覆盖原始图片对比效果深圳抖音seo
  • 如何做网站 百度经验网站搜索引擎优化的方法
  • 网站建设公司的成本有哪些内容百度官网入口链接
  • 医院网站php源码成都有实力的seo团队
  • 宣传重庆seo标准
  • 青岛网站设计哪家好企业培训系统
  • wordpress服务器镜像网站seo方法
  • 8. 状态模式
  • 深度解析 inaSpeechSegmenter:高效音频语音分割与检测开源工具
  • Linux 系统网络配置及 IP 地址相关知识汇总
  • 数据结构第1问:什么是数据结构?
  • 【计算机组成原理】第一章:计算机系统概述
  • 1. Qt多线程开发