一.导出文件,使用web 前端,在firefox 和Chrome 中使用 a 标签(或者js)就可以实现,如下:其中,
1. download 设置下载的文件名。
2. href 加上 data:text/txt;charset=utf-8 分别设置点击link 是下载文件, 编码是utf-8 . 这个逗号后面的就是保存在文件中的内容了
<html> <head> </head> <body> <a id="test" download="download.txt" href="data:text/txt;charset=utf-8,My name is LiHuan">download</a> </body> </html>

二.
csv 文件可以用Excel打开, 如果是导出一个table 的话,使用Excel 就方便很多了。
问题是: 如何分行, 分列?
理论上 : 分列使用 , 号分割, 分行用 .
可以用以上方式,会发现列可以分开,但是不换行。 看上去不认识 .
解决方式是使用 encodeURIComponent 进行编码/
————————————————
以上使用的都是utf-8 编码,理论上导出中文应该不是问题。
但是导出csv 格式的话, 使用Excel 打开会发现中文是乱码,但是用其他文本程序打开确是正常的。
原因就是少了一个 BOM头 。 ufeff。
加上一切都正常了,
————————————————
这里有两个改变
1. 页面的charset 需设置成gb2312
2. 加上 ufeff BOM 头
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="oscar999">
<title>
</title>
<script>
function clickDownload(aLink){
var str="栏位1,col2,col3
value1,value2,value3";
str = encodeURIComponent(str);
aLink.href="data:text/csv;charset=utf-8, ufeff"+str;
aLink.click();
}
</script>
</head>
<body>
<a id="test" download="download.csv" onclick="clickDownload(this)" href="#">download</a>
</body>
</html>
