JavaScript中使用ActiveXObject操作本地文件夹的方法

  次阅读 作者:智能小宝 来源:互联网 2016-01-26 10:22 我要评论(0)

以前一直用vbscript来操作文件夹,才发现原来使用JavaScript也是可以的,肯定不如vbs用的简单,不过学习一下还是不错的

在Windows平台上, js可以调用很多Windows提供的ActivexObject,本文就使用js来实现文档处理, 和使用js编写ActiveX做一个简单介绍.

代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<title> New Document </title>

</head>

<script type="text/javascript">

function readFolder(){

var filePath = "d:\test\";

var fso = new ActiveXObject("Scripting.FileSystemObject");//加载控件

var f = fso.GetFolder(filePath);

var underFiles = new Enumerator(f.files); //文件夹下文件

for (;!underFiles.atEnd();underFiles.moveNext()){

var fn = "" + underFiles.item();

//alert(fn);

var content = readFile(fn,fso);

alert(content);

}

}

function readFile(path,fso){

var f1 = fso.GetFile(path);

var fh = fso.OpenTextFile(f1, 1/*reading*/);

var content = '';

while ( !fh.AtEndOfStream ) {

content += fh.ReadLine();

}

fh.close()

return content;

}

function writeExcel(){

var ExcelApp = new ActiveXObject("Excel.Application");

var ExcelSheet = new ActiveXObject("Excel.Sheet");

ExcelSheet.Application.Visible = true;

ExcelSheet.ActiveSheet.Cells(1,1).Value = "This is column A, row 1";

ExcelSheet.SaveAs("d:\TEST.XLS");

ExcelSheet.Application.Quit();

}

</script>

<body>

<input type="button" value="遍历文件夹" onclick="readFolder()">

<input type="button" value="写excel" onclick="writeExcel()">

</body>

</html>

JavaScript中ActiveXObject对象是启用并返回 Automation 对象的引用。使用方法:

newObj = new ActiveXObject( servername.typename[, location])

ActiveXObject 对象语法有这些部分:其中newObj是必选项。要赋值为 ActiveXObject 的变量名。

servername是必选项。提供该对象的应用程序的名称。

typename是必选项。要创建的对象的类型或类。

location是可选项。创建该对象的网络服务器的名称。

切记:ActiveX是微软的东西,故而这玩意儿只有IE才支持!

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...