二进制-html5下a标签,如何定义下载文件txt的编码方式

问题描述

html5下a标签,如何定义下载文件txt的编码方式
要用a标签的download属性,下载一个txt的文件,文件内容是js下的字符串,然后本人用blob装成二进制流,在用URL.createObjectURL生成href地址。然后赋给a标签。但是每次遇到字符串中有中文,就会出现txt文本编码自动变成utf-8,本人想要的是ansi格式的txt文件。

 <!doctype html><html lang=""en""><head>    <meta charset=""UTF-8"">    <title>Document</title></head><body><script>    function downloadFile(fileName content){        var aLink = document.createElement('a');        var blob = new Blob([content]{type:""text/bath;charset=gbk""});        var evt = document.createEvent(""HTMLEvents"");        evt.initEvent(""click"" false false);//initEvent 不加后两个参数在FF下会报错 感谢 Barret Lee 的反馈        aLink.download = fileName;      /* aLink.href ='data:text/bath;charset=gbk'+encodeURI(content);*/       aLink.href =URL.createObjectURL(blob);       /* aLink.chartset=""GBK"";        aLink.hreflang=""zh"";*/        console.log(aLink.href);        aLink.dispatchEvent(evt);    }    var str =""dsaklfda你好吗"";    downloadFile('lalala.bat'str)</script></body></html>

解决方案

木有大神吗?又去搜索了一些文章,发现是a标签在将数据流转成文件的时候,自动选择了utf8。

时间: 2024-10-30 02:54:26

二进制-html5下a标签,如何定义下载文件txt的编码方式的相关文章

Ajax请求二进制流进行处理(ajax异步下载文件)的简单方法

摘要: ajax请求一个二进制流(文件),转换为Blob进行处理或者下载保存文件 需求 管理后台需要随时下载数据报表,数据要实时生成后转换为excel下载. 文件不大,页面放置"导出"按钮,点击按钮后弹出保存文件对话框保存 说明:第一种方法使用a标签直接可以满足大部分人需求,第二种方法纯粹是在说实现方法以及更好的操作体验,不需要(举一个需要第二种方法的例子:如果生成很慢就需要生成过程中禁用按钮,防止连续生成)用到的可以不用看 解决方案 方法一 请求文件的接口能改为GET则可以使用这种方

HTML5 对各个标签的定义与规定:nav

对nav标签的定义与规定 HTML5中的新元素标签<nav>用来将具有导航性质的链接划分在一起,使代码结构在语义化方面更加准确,同时对于屏幕阅读器等设备的支持也更好. 一直以来,我们习惯于使用形如<div id="nav">或<ul id="nav">这样的代码来写页面的导航:在HTML5中,我们可以直接将导航链接列表放到<nav>标签中 根据W3C的定义规范: nav元素是一个可以用来作为页面导航的链接组:其中的导航

HTML5 对各个标签的定义与规定:aside

对aside标签的定义与规定 <aside> 用来装载非正文类的内容.(DOM接口.可设置属性). 例如广告,成组的链接,侧边栏等等. <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>HTML5论坛 www.htmlv.cn asi

HTML5 对各个标签的定义与规定:script

script 标签用于定义客户端脚本,比如 JavaScript. 除全局属性之外有如下属性 src 定义指向包含脚本的文件的 URL(这样您就可以引用某个包含脚本的文件,而不是直接把脚本插入您的 HTML 文档中) async 定义脚本是否异步执行. defer 指示脚本不会生成任何文档内容.浏览器可继续解析并绘制页面. type 指定MIME类型 默认text/javascript charset 定义脚本中使用的字符编码. 如果 async 属性为 true,则脚本会相对于文档的其余部分异

HTML5 对各个标签的定义与规定:base

base标签除了全局的属性之外,还有 href.target两个属性. 没有内容值.   interface HTMLBaseElement : HTMLElement {            attribute DOMString href;            attribute DOMString target; }; base标签用于定义HTML文档中的相对url地址的基准URL,和接下来链接的浏览器打开方式. 每个HTML文档只能设置一个base标签. base元素必须至少包含hr

HTML5 对各个标签的定义与规定:style

style标签用来定义网站的样式. 可设置属性 media :screen tty tv projection handheld print braille aural all type:text/css scoped:true 或者 false title:有不同的含义 type属性用于设置样式语言的种类,一般情况,也是默认值是text/css. media属性用于设置该元素适用于哪种媒体,默认为all,即在适合任何媒体. scoped用于定义该元素的适用范围,如果设置了该属性则意味着元素的作

HTML5 对各个标签的定义与规定:section

<section>标签是 HTML 5 中的新标签. W3C定义为: <section> 标签定义文档中的节(section).比如章节.页眉.页脚或文档中的其他部分. section元素标签用来表现普通的文档内容或应用区块.一个section通常由内容及其标题组成...但section元素标签并非一个普通的容器元素:当一个容器需要被直接定义样式或通过脚本定义行为时,推荐使用div元素而非section. 通常不推荐为那些没有标题的内容使用 :我们可以使用HTML5轮廓工具来检查我

HTML5中&lt;!DOCTYPE&gt;标签的定义和用法

  HTML 5 <!DOCTYPE> 标签 定义和用法 <!DOCTYPE> 声明必须位于 HTML5 文档中的第一行,也就是位于 <html> 标签之前.该标签告知浏览器文档所使用的 HTML 规范. doctype 声明不属于 HTML 标签:tag; 它是一条指令,告诉浏览器编写页面所用的标记的版本. 在所有 HTML 文档中规定 doctype 是非常重要的,这样浏览器就能了解预期的文档类型. HTML 4.01 中的 doctype 需要对 DTD 进行引用

HTML5 对各个标签的定义与规定:header

<header>标签定义文档的页面组合,通常是一些引导和导航信息(DOM接口.可设置属性). <header>标签定义文档的页眉(介绍信息). Header 区的例子包含了页面标题和副标题,<header>标签被用来创建页面的Header区的内容.除了网页本身之 外,<header>标签还可以包含关于<section>和&article>的公开信息.这里创建的网页有该 页面的一个Header区,这在高层设计中有给出,以及一个位于Ar