看看这个如何?
package DownLoad; 
import java.io.*;
import javax.servlet.ServletException; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse;
import javax.servlet.*;
 
public class ServletTest extends HttpServlet 

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

//PrintWriter out=response.getWriter(); 
//out.println("<html><body><h1>This is a servlet test--called by Get</h1></body></html>");
response.setContentType("application/octet-stream");
response.setHeader("Content-Disposition","attachement;filename=index.htm");
OutputStream os=response.getOutputStream();
FileInputStream fis=new FileInputStream("index.htm");
getServletContext().getRealPath("c:/NetAnt.exe");
byte[] ba=new byte[4096];
int r=0;
while((r=fis.read(ba))!=-1)
{
os.write(ba,0,r);
}fis.close();}
public void doPost(HttpServletRequest request, HttpServletResponse response) 
throws ServletException, IOException  
{}}