包括:
1、使用ActiveX报错
2、浏览器自动下载文件到本地,JavaScript中的ActiveXObject对象(是否存在判断、创建、移动、删除)
3、获取本地文件最后修改时间
4、增强文件操作对IE版本的兼容性
5、Ajax处理XML,XMLHttpRequest对象的创建和访问servlet并返回xml数据到页面展示
1、如果在IE中打开的网页文件使用ActiveX报错:
解决IE浏览器的Automation 服务器不能创建对象:https://blog.youkuaiyun.com/weixin_41949786/article/details/80700898
此计算机上的安全设置禁止访问其他域的数据源:https://blog.youkuaiyun.com/shang_111111/article/details/8214771
文件检查是否存在及创建:
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fileExists = fso.FolderExists("c:/test/test.txt");
// c:/test/test.txt
// c:\\test.txt
if (!fileExists) {
fso.CreateFolder("c:\\test");
}
2、浏览器自动下载文件到本地,JavaScript中的ActiveXObject对象(是否存在判断、创建、移动、删除):https://blog.youkuaiyun.com/zengxin2008/article/details/7182127
示例:
//发送文件下载请求
var xmlHTTP = new ActiveXObject("Microsoft.XMLHTTP");
xmlHTTP.open("Get", RemoteURL, false);
// RemoteURL可以为:http://127.0.0.1:8080/test.txt
// RemoteURL可以为:/DownLoadServlet?fileName=test.txt
// RemoteURL可以为:http://127.0.0.1:8080/DownLoadServlet?fileName=test.txt
xmlHTTP.send();
//保存文件到本地
var adodbStream = new ActiveXObject("ADODB.Stream");
adodbStream.Type = 1; //1=adTypeBinary
adodbStream.Open();
adodbStream.write(xmlHTTP.responseBody);
adodbStream.SaveToFile(LocalURL, 2);
// LocalURL:c:\\test\\test.txt
adodbStream.Close();
adodbStream = null;
xmlHTTP = null;
3、获取本地文件最后修改时间:
<!DOCTYPE HTML>
<html>
<script>
alert(getModifiedTime("c:/HmiDownload/HMIBrowser.rar"));
function getModifiedTime(filePath){
// ActiveX必须在IE中使用。如果报错:
var fso = new ActiveXObject("Scripting.FileSystemObject");
var f1 = fso.GetFile(filePath);
// c:/HmiDownload/HMIBrowser.rar
// c:\\myjstest.txt
var date = f1.DateLastModified;
var dlm = new Date(date);
var y = dlm.getFullYear();
var mon = dlm.getMonth()+1;
mon = getFormat(mon);
var d = dlm.getDate();
d = getFormat(d);
var h = dlm.getHours();
h = getFormat(h);
var min = dlm.getMinutes();
min = getFormat(min);
var s = dlm.getSeconds();
s = getFormat(s);
return y + "-" + mon + "-" + d + " " + h + ":" + min + ":" + s;
}
function getFormat(v){
v = v < 10 ? '0' + v : v;
return v;
}
</script>
</html>
4、增强文件操作对IE版本的兼容性:
var xmlHttp;
createXMLHttpRequest();
function createXMLHttpRequest() {
if(window.ActiveXObject)
{
var aVersions =["MSXML2.XMLHttp.5.0","MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0","MSXML2.XMLHttp","Microsoft.XMLHttp"];
for(int i=0;i<aVersions.length;i++)
{
try
{
xmlHttp = new ActiveXObject(aVersions[i]);
return;
}
catch(oError)
{
}
}
}
else if(window.XMLHttpRequest)
{
xmlHttp = new XMLHttpRequest();
return;
}
throw new Error("XMLHttp object could not becreated.");
}
5、Ajax处理XML,XMLHttpRequest对象的创建和访问servlet并返回xml数据到页面展示:https://blog.youkuaiyun.com/qq445422083/article/details/7965231