html5下A标签,⾃定义利⽤download属性下载⽂件的编码⽅
式
利⽤a标签的download属性,⽣成⼀个⽂本下载⽂件,当字符串中有中⽂时候,通常就会出现保存的txt⽂件编码默认为utf-8,以下代码可以解决⽂本⽂件编码为utf-8或ansi格式⾃定选择。
function base64(vStr){
//base64编码代码略,⾃⾏去寻插件。这⾥模拟直接返回编码后的值。
return '5Yip55SoQeagh+etvueahGRvd25sb2Fk5YGaQU5TSeaWh+acrOS/neWtmOa1i+ivle+8gQ==';
}
//预保存的⽂本内容
var tStr ="利⽤A标签的download做ANSI⽂本保存测试!"
saveTxt = function(vFilename,vText,vCharset) {
//⽂件名判断处理
if(!vFilename){return 'vFilename is null';}
try{ //养成好习惯,加⼊错误处理
//创建A标签
var aLink = ateElement('a');
UpperCase()=='ANSI'){
//利⽤base64编码解决URL编码默认是UTF-8模式。
aLink.href = 'data:text/plain;base64,' + base64(vText);
}else{
//encodeURIComponent默认是将字符转换成utf-8格式的url编码
aLink.href = 'data:text/plain;charset=utf-8,' + encodeURIComponent(vText);
}
/
/A标签download属性赋值
aLink.download = vFilename;
//模拟点击A标签
aLink.click();
return true;
}catch(err){
console.log(err)
console.ssage);
return false;
}
}url编码和utf8区别
saveTxt('',tStr,'utf-8'); //utf-8编码保存⽂本
saveTxt('',tStr,'ansi'); //ansi编码保存⽂本
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论