尝试通过IE,ADODB.Stream在客户端保存二进制文件时出现问题。
假设客户端的浏览器具有将文件写入硬盘的完全权限。
这是我的客户端代码,由javascript。:
var base64_encoded_string = "base64 string of a binary file";
var data = window.atob(base64_encoded_string);
var stream = new ActiveXObject("ADODB.Stream");
stream.Type = 1; // text
stream.Open();
stream.Write(data); //Problem in here
stream.SaveToFile("D:\\Whatever.pfx", 2);
stream.Close();
因为我标记的问题来自于编写二进制数据。我总是有错误:
"参数类型错误,超出可接受范围或相互冲突"
无论我格式化什么或将数据变量更改为字节数组,blob ......
请帮助我在这种情况下如何输入数据来写二进制文件。
答案 0 :(得分:1)
您需要使用WriteText
stream.WriteText(data);