请问如何用java或标准c实现从服务器端下载文件功能?

请问如何用java或标准c实现从服务器端下载文件功能?,第1张

你的服务器是什么规范?HTTP?FTP?还是说要顺便写一个服务端出来?

如果是要写服务端的,自己搜索,网上有。

如果是HTTP协议和FTP协议的,java版本的见代码

InputStream ios=new URL("http://19216811/文件bomzip所在的WEB目录/bomzip")openConnection()getInputStream();

BufferedOutputStream bout=new BufferedOutputStream(new FileOutputStream("c:/存放目录/bomzip"));

byte buff[]=new byte[1024];

int count;

while((count=iosread(buff))>0){

boutwrite(buff, 0, count);

}

iosclose();

boutclose();

如果要C的话,用socket做,看一下HTTP协议规范,很简单可以做到文件传输的。

ublic HttpServletResponse download(String path, HttpServletResponse response) {

try {

// path是指欲下载的文件的路径。

File file = new File(path);

// 取得文件名。

String filename = filegetName();

// 取得文件的后缀名。

String ext = filenamesubstring(filenamelastIndexOf("") + 1)toUpperCase();

// 以流的形式下载文件。

InputStream fis = new BufferedInputStream(new FileInputStream(path));

byte[] buffer = new byte[fisavailable()];

fisread(buffer);

fisclose();

// 清空response

responsereset();

// 设置response的Header

responseaddHeader("Content-Disposition", "attachment;filename=" + new String(filenamegetBytes()));

responseaddHeader("Content-Length", "" + filelength());

OutputStream toClient = new BufferedOutputStream(responsegetOutputStream());

responsesetContentType("application/octet-stream");

toClientwrite(buffer);

toClientflush();

toClientclose();

} catch (IOException ex) {

exprintStackTrace();

}

return response;

}

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 请问如何用java或标准c实现从服务器端下载文件功能?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情