- 论坛徽章:
- 0
|
在浏览网页时, 经常有对流量数据保存到某地的需求
如:对一个表格的数据,另存到本地。
这里以excel表格方式存储数据为例,说明“另存为”的实现方式。
1.最终生成文件格式 csv
csv 是默认用excel可以读取的一种文本,格式简单,数据之间以“, ” 逗点分隔,读入后,按逗点分为不同的列。
各行见以"\n"分隔
如:a.csv 数据内容为:第一列, 第二列, 第三列
2。程序中实现方法
有多种方法可以实现:
第一种:生成页面表格的同时生成文件,用户点击 按钮时, 按钮调用连接,连接指向该文件
第二种:生成页面表格的同时不生成文件,在用户点击另存按钮时,cgi先生成文件,而后提示用户保存
(保存时如果用户点击取消,实际服务器文件并未删除,因文件名服务器相同,所以不支持并发操作)
例子:
#define ERR_LOG "/usr/local/apache/htdocs/qbas/consignment/bonus_return_save.csv"
#define OPEN_FILE "
http://qb.oss.com/qbas/consignment/bonus_return_save.csv
"
while(i
}
printf("Content-type: text/html\n\n");
printf("\n");
printf("\n");
printf("\n");
printf("\n");
printf("window.location.href='%s';", OPEN_FILE );
printf("\n");
printf("\n");
fflush(stdout);
第三种:生成页面表格的同时不生成文件,在用户点击另存按钮时,提示用户保存,在用户保存的同时输出数据
printf("Content-Type: application/octet-stream\n");
printf("Content-Disposition: attachment; filename=bonus_return.csv\n\n");
while (i
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/70323/showart_1269865.html |
|