使用JS生成文件 ,使用utf编码时,出现乱码的现象的解决办法

找到一个使用JS生成文件的方法,功能实现还不错,方法如下,

function saveHtml() {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var f = fso.OpenTextFile("C://a.html", 2, true);
f.Write(document.documentElement.outerHTML);
f.Close();
fso = f = void(0);
}

有一个缺点就是对UTF-8的文件会显示乱码,从众多的帮助文档中找到原来fso.OpenTextFile()文件有四个参数,这最后一个参数即控制着文件的编码格式,默认是系统默认值,仔细查看了一下参数说明,发现第四个参数有以下选项:

TristateUseDefault-2使用系统默认值打开文件。
TristateTrue-1以 Unicode 方式打开文件。
TristateFalse 0以 ASCII 方式打开文件。

把var f = fso.OpenTextFile("C://a.html", 2, true);改为

var f = fso.OpenTextFile("C://a.html", 2, true,-1);时生成的文件即为utf编码,也就不会有乱码了!!

当然如果需要也可以指定为ASCII的格式~~~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值