`
zoutuo1986
  • 浏览: 178962 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

用js在客户端自动从ftp下载文件,并写入页面。

 
阅读更多

 

1、写bat文件;2、执行bat文件;3、读取数据文件
<%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>页面一</title>
</head>
<body>
<div id='desc'></div>
<FORM method="POST" action='../IndexServlet' name='abc' enctype="multipart/form-data" >
	<div style='display:none'><textarea id='file' name='file'></textarea></div>
	<input type='button' value='获取数据' onclick='getData(this)'/>
	<input id='submit' type='submit' value='提交数据' disabled="disabled"/>
</FORM>
<script>
var baseUrl="D:";
var batFileUrl = baseUrl+"\\myftp.bat";
var dataFileUrl = baseUrl+"\\test.txt";
var fso=null;
function getData(obj){
	obj.disabled="disabled";
	try{
		 if(window.ActiveXObject){
			 fso=new ActiveXObject("Scripting.FileSystemObject"); 
			 batFile = fso.CreateTextFile(batFileUrl,true);
			 batFile.WriteLine(baseUrl);
			 batFile.WriteLine("echo open 10.192.36.129>ftp.txt");
			 batFile.WriteLine("echo sxrisk>>ftp.txt");
			 batFile.WriteLine("echo 1qaz2wsx>>ftp.txt");
			 batFile.WriteLine("echo get /cccc/sxrisk/test.txt>>ftp.txt");
			 batFile.WriteLine("echo bye>>ftp.txt");
			 batFile.WriteLine("ftp -s:ftp.txt");
			 batFile.WriteLine("del ftp.txt");
			 batFile.Close();
			 document.getElementById('desc').innerHTML="创建本地bat文件成功";
			 WshShell = new ActiveXObject("WScript.Shell");
			 WshShell.Run("cmd /C call "+batFileUrl,2,false);//2:不显示cmd窗口
			 document.getElementById('desc').innerHTML+="<br/>执行bat文件,下载文件结束。";
			 //fso.DeleteFile(batFileUrl);
			 setTimeout("readData()",100);
		 }else{
			 alert("不支持window.ActiveXObject");
		 }
	}catch(e){
		alert(e);
	}
	obj.disabled="";
}
var count=0;
function readData(){
	var kk=null;
	try{
		 kk=fso.OpenTextFile(dataFileUrl);
	}catch(e){
		if(count<10){
			setTimeout("readData()",1000);
			document.getElementById('desc').innerHTML+="<br/>读取数据文件失败,1秒后继续";
			count++;
		}
		return;
	}
	var str='';
	while(!kk.atEndOfLine){
		str+=kk.readLine()+'   ';
	}
	kk.Close();
	fso.DeleteFile(dataFileUrl);
	document.getElementById('file').innerHTML=str;
	document.getElementById('desc').innerHTML+="<br/>读取数据文件成功";
	document.getElementById('submit').disabled='';
}
</script>
</body>
</html>

--结果

 

 

 

 

----ActiveXObject对象有很大几率创建不了,需要做的:

1、降低Internet 选项--安全--自定义级别,经测试IE8版本浏览器只要降低这一项即可,其他默认。

2、网上有说,cmd中执行命令"regsvr32 scrrun.dll",可以处理"automation服务器不能创建对象"的问题。

 

3、在注册表中,给Scripting.FileSystemObject项添加权限的事情我也做了,右击"Scripting.FileSystemObject项",添加权限,

 

4、创建cmd文件,执行修复什么东西的脚本,不知道管不管用,我也试过。(来自:http://www.jb51.net/article/9772.htm)

 

5、请将以下语句复制到记事本中,另存为后缀为.cmd的文件,并运行。当然在命令行下一句句运行也没问题。 

echo 正在修复,这个过程可能需要几分钟,请稍候…… 
rundll32.exe advpack.dll /DelNodeRunDLL32 %systemroot%/System32/dacui.dll 
rundll32.exe advpack.dll /DelNodeRunDLL32 %systemroot%/Catroot/icatalog.mdb 
regsvr32 /s comcat.dll 
regsvr32 /s asctrls.ocx 
regsvr32 /s oleaut32.dll 
regsvr32 /s shdocvw.dll /I 
regsvr32 /s shdocvw.dll 
regsvr32 /s browseui.dll 
regsvr32 /s browseui.dll /I 
regsvr32 /s msrating.dll 
regsvr32 /s mlang.dll 
regsvr32 /s hlink.dll 
regsvr32 /s mshtml.dll 
regsvr32 /s mshtmled.dll 
regsvr32 /s urlmon.dll 
regsvr32 /s plugin.ocx 
regsvr32 /s sendmail.dll 
regsvr32 /s mshtml.dll /i 
regsvr32 /s scrobj.dll 
regsvr32 /s corpol.dll 
regsvr32 /s jscript.dll 
regsvr32 /s msxml.dll 
regsvr32 /s imgutil.dll 
regsvr32 /s cryptext.dll 
regsvr32 /s inseng.dll 
regsvr32 /s iesetup.dll /i 
regsvr32 /s cryptdlg.dll 
regsvr32 /s actxprxy.dll 
regsvr32 /s dispex.dll 
regsvr32 /s occache.dll 
regsvr32 /s iepeers.dll 
regsvr32 /s urlmon.dll /i 
regsvr32 /s cdfview.dll 
regsvr32 /s webcheck.dll 
regsvr32 /s mobsync.dll 
regsvr32 /s pngfilt.dll 
regsvr32 /s licmgr10.dll 
regsvr32 /s hhctrl.ocx 
regsvr32 /s inetcfg.dll 
regsvr32 /s trialoc.dll 
regsvr32 /s tdc.ocx 
regsvr32 /s MSR2C.DLL 
regsvr32 /s msident.dll 
regsvr32 /s msieftp.dll 
regsvr32 /s xmsconf.ocx 
regsvr32 /s ils.dll 
regsvr32 /s msoeacct.dll 
regsvr32 /s wab32.dll 
regsvr32 /s wabimp.dll 
regsvr32 /s wabfind.dll 
regsvr32 /s oemiglib.dll 
regsvr32 /s directdb.dll 
regsvr32 /s inetcomm.dll 
regsvr32 /s msoe.dll 
regsvr32 /s oeimport.dll 
regsvr32 /s msdxm.ocx 
regsvr32 /s dxmasf.dll 
regsvr32 /s laprxy.dll 
regsvr32 /s l3codecx.ax 
regsvr32 /s acelpdec.ax 
regsvr32 /s mpg4ds32.ax 
regsvr32 /s danim.dll 
regsvr32 /s Daxctle.ocx 
regsvr32 /s lmrt.dll 
regsvr32 /s datime.dll 
regsvr32 /s dxtrans.dll 
regsvr32 /s dxtmsft.dll 
regsvr32 /s wshom.ocx 
regsvr32 /s wshext.dll 
regsvr32 /s vbscript.dll 
regsvr32 /s scrrun.dll mstinit.exe /setup 
regsvr32 /s msnsspc.dll /SspcCreateSspiReg 
regsvr32 /s msapsspc.dll /SspcCreateSspiReg 
echo. 
echo. 
echo 修复成功!任意键退出! 
pause>nul 
  • 大小: 10.4 KB
  • 大小: 14.6 KB
  • 大小: 34.4 KB
分享到:
评论

相关推荐

    springboot 管理ftp文件系统,上传,下载,ftp

    在Spring Boot框架中,管理FTP文件系统涉及到使用Java的FTP客户端库来实现文件的上传和下载功能。Spring Boot简化了这一过程,通过集成各种库,如Apache Commons Net或JSch,我们可以轻松地创建一个FTP服务客户端。...

    c#ftp服务器下载文件.rar

    在IT行业中,FTP(File Transfer ...通过上述步骤,我们可以用C#编写一个FTP客户端应用,实现从FTP服务器下载文件的功能,并结合浏览器提供友好的用户体验。理解并掌握这些知识点对于进行相关项目开发至关重要。

    C#做的FTP文件的下载程序

    标题 "C#做的FTP文件的下载程序" 描述了使用C#编程语言开发的一个应用程序,该程序能够实现从FTP服务器下载文件的功能。FTP(File Transfer Protocol)是一种用于在网络上进行文件传输的标准协议,常用于网站管理和...

    webFTP一个PHP写的在线FTP文件管理系统

    作为一个轻量级的解决方案,webFTP使得用户无需安装专门的FTP客户端软件,只需要在浏览器中即可完成上传、下载、删除、重命名等文件操作,对于网站管理员或远程协作团队来说,这是一个非常实用的工具。 **主要功能*...

    传送图片至FTP及显示FTP上图片

    FTP使用客户端-服务器模型,其中客户端(你的计算机)连接到服务器并发送文件请求。在传输图片至FTP的过程中,你需要一个FTP客户端软件,如FileZilla、WinSCP或内置在某些编程语言中的库。以下是一个简单的步骤: 1...

    c++使用libcurl上传和下载资源

    本篇文章将深入探讨如何在C++中使用`libcurl`进行文件的上传和下载,并结合`nodejs`测试服务端来验证实现。 `libcurl`是一个免费的开源库,用于在各种协议(包括HTTP、HTTPS、FTP等)下进行文件传输。它提供了丰富...

    asp.net FTP客户端设计与开发_project.rar

    在本项目中,我们将探讨如何使用ASP.NET框架构建一个功能完善的FTP客户端,以实现文件的上传、下载以及管理。以下是一些关键知识点: 1. **FTP协议基础**:FTP是一种用于在Internet上可靠地传输文件的应用层协议。...

    ASP.NET+FTP客户端设计与开发.rar

    在"ASP.NET+FTP客户端设计与开发"这个项目中,我们将深入探讨如何利用ASP.NET技术来创建一个FTP(File Transfer Protocol)客户端,从而实现文件的上传、下载以及管理功能。 FTP是一种标准的网络协议,用于在...

    asp.net FTP客户端设计与开发(源代码+论文).rar

    在这个项目中,学生通常需要构建一个基于ASP.NET的FTP客户端,该客户端能够连接到FTP服务器,进行文件的上传、下载以及管理等操作。以下是关于这个主题的详细知识点: 1. **FTP基础知识**:FTP(File Transfer ...

    WebFtp:一个基于Web的FTP客户端

    WebFtp是一个基于Web的FTP(File Transfer Protocol)客户端,它允许用户通过浏览器来访问、上传、下载和管理远程服务器上的文件。这个项目利用了Web技术,尤其是JavaScript,来实现传统桌面FTP客户端的功能,但无需...

    ftp 客户端实现

    用edtftpj.jar 实现的ftp client edtFTPj是一个非常强大的FTP组件,有Java版本、.NET版本、JavaScript版本。  Java版本的有收费的edtFTPj/PRO,还有免费开源的... 4)支持以FTP流的方式灵活地从FTP服务器读取和写入

    php web版FTP管理系统

    这样的系统允许用户在不直接使用FTP客户端的情况下,通过浏览器就能完成文件的上传、下载、删除以及目录管理等操作,极大地提高了文件管理的便捷性。 **一、PHP基础** PHP(Hypertext Preprocessor)是一种开源的...

    java下载文件的种方式

    在前端,可以使用Resumable.js这样的JavaScript库,它支持浏览器端的断点续传,与后端配合实现更友好的文件下载体验。 在实际开发中,选择哪种方式取决于具体需求,如文件大小、性能要求、用户交互等因素。同时,...

    红兔子网盘进度下载文件例子

    这通常涉及到JavaScript或Web前端框架(如React、Vue.js等)的使用,它们负责与后台通信,实时更新下载进度条。 总的来说,红兔子网盘的进度下载功能涉及到了网络协议、服务器端的文件状态管理、客户端的数据处理...

    FTP源码

    FTP(File Transfer Protocol)是一种广泛使用的互联网协议,用于在客户端和服务器之间进行文件传输。本文将深入探讨基于C#实现的FTP源码,特别是异步编程的方面,并结合JavaScript进行跨平台的应用。 在C#中,FTP...

    ftp上传大附件

    FTP(File Transfer Protocol)是一种广泛使用的网络协议,用于在互联网上进行文件传输。当你需要将大附件上传到服务器时,FTP能提供一个有效且相对简单的解决方案。本示例("ftp上传大附件demo")旨在教你如何利用...

    FTP工具 网页上传工具

    FTP(File Transfer Protocol)工具是网络上用于在不同计算机之间传输文件的标准协议的实现,它允许用户从一台计算机(客户端)向另一台计算机(服务器)上传或下载文件。FTP工具通常具有用户友好的图形界面,使得...

    基于PHP的Ftp Web-Client RC 1.zip

    1. **FTP协议**:FTP是一种用于在网络上进行文件传输的标准协议,允许用户从远程服务器上下载文件或上传文件到服务器。 2. **PHP基础**:PHP是一种服务器端脚本语言,可以创建动态交互式网站。它的语法类似于C语言...

    一点小小的ftp工具

    FTP(File Transfer Protocol)是一种广泛使用的网络协议,用于在互联网上进行文件传输。"一点小小的ftp工具"这个标题暗示我们讨论的是一个轻量级的FTP客户端软件,可能适合小型项目或者个人用途。FlashFXP是其中的...

Global site tag (gtag.js) - Google Analytics