/使用servlet页面进行操作
package com.download;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.OutputStream;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class FileDownServlet extends HttpServlet {
private static final long serialVersionUID = 3802441299211999382L;
private static final String CONTENT_TYPE = "text/html; charset=utf-8";
/**
* 使用doGet方法
*/
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType(CONTENT_TYPE);
//得到下载文件的名字
String filename=request.getParameter("filename");
//创建file对象
File file=new File("E://temp//"+filename);
//设置response的编码方式
response.setContentType("application/x-msdownload");
//写明要下载的文件的大小
response.setContentLength((int)file.length());
//发送到客户端的文章
response.setHeader("Content-Disposition","attachment;filename="+filename);
//读出文件到i/o流
FileInputStream fis=new FileInputStream(file);
BufferedInputStream buff=new BufferedInputStream(fis);
byte [] b=new byte[1024];//相当于我们的缓存
long k=0;//该值用于计算当前实际下载了多少字节
//从response对象中得到输出流,准备下载
OutputStream myout=response.getOutputStream();
//开始循环下载
while(k<file.length()){
int j=buff.read(b,0,1024);
k+=j;
//将b中的数据写到客户端的内存
myout.write(b,0,j);
}
//将写入到客户端的内存的数据,刷新到磁盘
myout.flush();
myout.close();
}
}
//html页面
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>download.xhtml</title>
<meta http-equiv="keywords" content="enter,your,keywords,here" />
<meta http-equiv="description" content="A short description of this page." />
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<!--<link rel="stylesheet" type="text/css" href="styles.css">-->
</head>
<body>
<p>
<a href=fileDownServlet.do?filename=cc.doc>5.1下载书--java</a>
</p>
</body>
</html>
//web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>FileDownServlet</servlet-name>
<servlet-class>com.download.FileDownServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>FileDownServlet</servlet-name>
<url-pattern>/fileDownServlet.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>download.html</welcome-file>
</welcome-file-list>
</web-app>
分享到:
相关推荐
提供的文件列表中,`Base64_Convert.exe`很可能是一个执行程序,用于实现这个功能,即读取包含Base64编码的文本文件(如`Base64转二进制文件.b64`),并将其转换为二进制文件。`Base64转二进制文件.docx`和`Base64转...
"txt文本文件转多种格式下载"的主题涉及到了文本文件的灵活性和适应性,以及如何根据需求将其转换为其他更复杂的或特定用途的文件格式。这里我们将深入探讨文本文件、TXT格式以及常见的转换方法。 TXT文件是最基本...
### OUT文件转HEX文件方法 #### 工具介绍 在进行.OUT文件转换为.HEX文件的过程中,我们主要依赖的是TI(Texas Instruments)公司提供的一个名为`hex2000`的工具。这个工具能够帮助我们将编译链接后生成的.OUT格式的...
标题中的"python json文件转txt文件,批处理json文件转换成一个txt文件",指的是使用Python编写脚本来读取多个JSON文件,解析其内容,并将数据写入到TXT文件中。这通常涉及到以下步骤: 1. **导入必要的库**:首先...
在提供的压缩包文件中包含的"喜马拉雅xm转换mp3工具+批量下载器"就是这样的工具。这类工具一般会提供用户友好的界面,允许用户导入多个XM文件,然后统一设定输出格式和质量参数。批量转换的优点在于可以节省大量手动...
在IT领域,文本文件(如.txt)和二进制文件(如.bin)是两种常见的数据存储格式,它们各自有着不同的用途和特点。本教程将详细解释如何将一个TXT文件转换成BIN文件,以及这种转换背后的基本概念。 首先,我们要了解...
《SolidWorks转CAD配置文件详解》 在机械设计领域,SolidWorks是一款广泛使用的三维建模软件,而CAD(Computer-Aided Design)则是通用的设计绘图工具。为了在不同软件之间进行无缝协作,需要将SolidWorks的工程图...
DBC文件是一种数据库通讯格式,主要用于存储汽车ECU(电子控制单元)中的数据,例如汽车的传感器数据、控制信号等。这种文件格式在汽车行业非常常见,主要用于调试和数据分析。转换DBC文件到Excel文件是为了让非专业...
【标题】:NC文件转TXT详解 在处理气象、海洋、气候等科学数据时,我们经常遇到NC(NetCDF)文件格式。这种文件格式是一种自我描述的、机器无关的、可扩展的数据存储格式,用于存储多维数组。然而,有时我们需要将...
这些文件可能来自于编译后的软件项目,或者可以从微软的符号服务器下载,用于调试系统或第三方库。获取PDB文件后,按照以下步骤操作: 1. **运行工具**:找到"PDB-TXT.exe",双击运行。如果需要在命令行环境中使用...
java 文件转 Base64 工具类 java 文件转 Base64 工具类java 文件转 Base64 工具类 java 文件转 Base64 工具类java 文件转 Base64 工具类 java 文件转 Base64 工具类java 文件转 Base64 工具类 java 文件转 Base64 ...
《文件目录结构转文本网页:技术解析与应用》 在现代数字生活中,管理和呈现大量文件目录结构变得日益重要。为了方便浏览和分享这些信息,将文件目录结构转化为文本网页,尤其是HTML格式,成为了一种高效的方式。...
在IT领域,文件格式转换是一项常见的任务,尤其在处理不同应用程序间的数据交换时。本教程将详细介绍如何将XDF...在IT领域,掌握不同文件格式的互转技巧是非常有用的,能帮助你在工作中更加高效地处理各种数据。
Kml文件转换成EXCEL、MIF、MID文件是一个涉及到地理信息数据处理的过程。Kml(Keyhole Markup Language)是Google开发的一种用于存储和展示地理数据的XML格式,广泛应用于地图服务,如Google Earth和Google Maps。而...
借助第三方Aspose.Pdf.dll及Spire.Pdf.dll 对pdf文件进行处理,可以把pdf文件转换成doc 或者docx png等格式,通过代码大家可以进行自己重新开发,核心代码已经编写完成,下载后可以直接运行进行pdf文件转换 ...
1. 解压下载的压缩包。 2. 找到并运行`Dcu2Pas.exe`应用程序。 3. 在命令行界面中,输入要转换的DCU文件的完整路径,例如:`Dcu2Pas test.dcu`。 4. 如果一切正常,工具将生成对应的PAS文件,文件名与原始DCU文件...
在IT行业中,有时候我们需要将小文件直接嵌入到程序中,以便在运行时可以方便地访问这些数据。标题提到的“任意文件转换成C语言数组”就是解决这类问题的一个方法。这种方法允许我们将文件内容编码为C语言数组,使得...
在IT行业中,尤其是在嵌入式系统和单片机编程领域,常常需要进行不同格式的数据转换,其中就包括将十六进制(HEX)文件转换为二进制(BIN)文件。标题提到的“hex转换成bin文件的工具”是解决这类问题的一个实用工具...
在“pcm测试文件下载”的描述中,提到下载的PCM文件用于测试,这可能包括验证音频播放设备的兼容性、测试音频处理软件的功能,或者用于音频分析和比较。PCM文件的原始性和无损性使得它成为测试的理想选择,因为它能...
1. **安装WinDbg**:首先,你需要下载并安装WinDbg。这个工具可以在微软的官方网站上找到,属于Windows Debugging Tools的一部分。 2. **打开Dump文件**:启动WinDbg后,点击"File"菜单,然后选择"Open Crash Dump...