免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 738 | 回复: 0
打印 上一主题 下一主题

数据导出的程序实现 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-09-28 12:00 |只看该作者 |倒序浏览
在浏览网页时, 经常有对流量数据保存到某地的需求
如:对一个表格的数据,另存到本地。
这里以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
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP