以下是参考总结网上的方法.基于php语言的,我注释下,对你应该有帮助.
//读取文件指针
$fp = fopen($csvfileLoad,"r")
//获取文件大小
$fsize = filesize($csvfileLoad)
//保存名称,这里应该就是带路径的文件将路径去除,可以省略.
$SaveName = str_replace("csv/","",$csvfileLoad)
//发送头信息,声明让浏览器下载文件,返回文件的格式,适用于所有文件
header("Content-type: application/download\r\n")
//发送头信息,声明返回的长度,即文件大小
header("Content-length: $fsize\r\n")
//因下载的文件是已知MIME类型,所以,这个地方就是覆盖浏览器要打开文件的行为,可以直接理解为激活下载窗口.
header("Content-disposition-type: attachment\r\n")
//要保存的文件名,这里是提供给下载窗口用的.
header("Content-disposition: filename=$SaveName")
//输出内容
$result = fpassthru($fp)
以上是php实现的,你主要是需要了解这几个关键的header,通过c语言怎么去实现,这就行了. 剩下的,你需要写个cgi,比如 download.cgi,给他提供参数,让他读取相应的文件,并返回.类似下面的
<a href="download.cgi?name=test.txt">下载</a>
或是直接在下载文件程序html的head部分内添加meta信息,提供头信息功能
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)