資源簡(jiǎn)介
使用cgi代碼在網(wǎng)頁上實(shí)現(xiàn)文件的下載功能。

代碼片段和文件信息
#include
#include
#include
#include
#include
#define?MAX_FILE_LEN??(1024*30)
#define?DOWNLOAD_FILE_PATH “/www/picture/“
#define?DOWNLOAD_FILE_NAME “1.jpg“
int?main(){
FILE?*fp;
char?filebuf[MAX_FILE_LEN];
char?cmd[65535];
struct?stat?sb;
sprintf(cmd?“%s%s“?DOWNLOAD_FILE_PATH?DOWNLOAD_FILE_NAME);
stat(cmd?&sb);?//取待下載文件的大小
//輸出HTTP頭信息,輸出附加下載文件、文件長(zhǎng)度以及內(nèi)容類型
printf(“Content-Disposition:attachment;filename=%s“?DOWNLOAD_FILE_NAME);
printf(“\r\n“);?
printf(“Content-Length:%d“?sb.st_size);
printf(“\r\n“);
printf(“Content-Type:application/octet-stream\r\n“);
printf(“\r\n“);
sprintf(cmd?“%s%s“?DOWNLOAD_FILE_PATH?DOWNLOAD_FILE_NAME);
if(fp=fopen(cmd?“r+b“)){??
//成功打開文件,讀取文件內(nèi)容
do{
int?rs?=?fread(filebuf?1?sizeof(filebuf)?fp);
fwrite(filebuf?rs?1?stdout);
}while(!feof(fp));
fclose(fp);
}
return?1;
}
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件???????1074??2013-12-24?19:42??cgi下載實(shí)現(xiàn)\download.c
?????文件?????????99??2013-12-20?12:26??cgi下載實(shí)現(xiàn)\download.html
?????目錄??????????0??2013-12-24?19:42??cgi下載實(shí)現(xiàn)
-----------?---------??----------?-----??----
?????????????????1173????????????????????3
評(píng)論
共有 條評(píng)論