首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

从文件服务器中自动下载文件并写入到本机中,这样的功能如何实现呢

2013-03-26 
从文件服务器中自动下载文件并写入到本机中,这样的功能怎么实现呢?老大交给了这么一个任务:JavaWeb项目,用

从文件服务器中自动下载文件并写入到本机中,这样的功能怎么实现呢?
老大交给了这么一个任务:
JavaWeb项目,用户在登陆系统时,浏览器自动到文件服务器中去下载一些文件(都是txt格式的日志文件)并保存在本机中。之前是需要用户手动点击下载链接的。
想了半天,都没什么头绪。用JavaScript吗?还是写一个ActiveX控件?
考虑到安全性的问题,浏览器是不能自动去下载文件并保存的啊。
感觉这些都是比较高级的东西了,对于我这么一个刚毕业的小菜,真的有难度啊。
各位兄弟有这方面的经验,还望赐教,小弟不胜感激。

批量下载中
从文件服务器中自动下载文件并写入到本机中,这样的功能如何实现呢
下载中...
从文件服务器中自动下载文件并写入到本机中,这样的功能如何实现呢
下载完毕
从文件服务器中自动下载文件并写入到本机中,这样的功能如何实现呢

资源下载:
CAB安装包
开发文档
DEMO示例

[解决办法]

引用:
老大交给了这么一个任务:
JavaWeb项目,用户在登陆系统时,浏览器自动到文件服务器中去下载一些文件(都是txt格式的日志文件)并保存在本机中。之前是需要用户手动点击下载链接的。
想了半天,都没什么头绪。用JavaScript吗?还是写一个ActiveX控件?
考虑到安全性的问题,浏览器是不能自动去下载文件并保存的啊。
感觉这些都是比较高级的东西了,对于我这么一个刚毕业的小菜,真的有难度……

这个需求普通的JS,或者JSP都没办法实现了。只能用楼上提供的方法来实现。
[解决办法]
没弄过,用普通js应该没办法实现
[解决办法]
引用:
引用:

引用:

JS也倒是可以实现的,在登录的时候触发下载的事件就可以了。但是在登录后就提示用户要下载东西这个感觉有些别扭,ActiveX控件感觉要好些。

Xproer.HttpDownloader: http://www.cnblogs.com/xproer/archive/2011/03/26/1996322.html
默认界面

批量下载中

下载中.……

他们这个产品的价格可以在官网上面看到。http://www.ncmem.com/webplug/http-downloader/index.aspx


他们官网提供了示例DEMO,你可以下载下来看下。
我抄了他们的一段示例代码,实现了各种与下载相关的功能。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>HTTP文件下载控件演示页面</title>
    <link type="text/css" href="HttpDownloader/HttpDownloader.css" rel="Stylesheet"/>
    <script type="text/javascript" src="HttpDownloader/HttpDownloader.js" charset="utf-8"></script>
</head>
<body>
<input type="button" value="下载测试文件" onclick="StartDown()" />
<div id="downDiv"></div>
    <script type="text/javascript" language="javascript">
    var downerMgr = new FileDownloaderMgr();
    downerMgr.Config["Folder"] = "F:\";
    downerMgr.LoadTo("downDiv");



window.onload = function()
{
downerMgr.Init();
};

function StartDown()
{
//添加到下载队列
downerMgr.AddFile("http://www.ncmem.com/images/ico-ftp.jpg");
downerMgr.PostFirst();
}

function copyFile()
{
var obj = new ActiveXObject(downerMgr.ActiveX["Partition"]);
obj.CopyFile("f:\\ftp\\test.gif","f:\\ftp\\test1.gif");
}

function copyFolder()
{
var obj = new ActiveXObject(downerMgr.ActiveX["Partition"]);
obj.CopyFile("f:\\ftp\\test.gif","f:\\ftp\\ftp1");
}

function moveFile()
{
var obj = new ActiveXObject(downerMgr.ActiveX["Partition"]);
obj.MoveFile("f:\\ftp\\test.gif","f:\\ftp\\test2.gif");
}

function moveFolder()
{
var obj = new ActiveXObject(downerMgr.ActiveX["Partition"]);
obj.MoveFile("f:\\ftp\\test2.gif","f:\\ftp\\ftp1");
}

</script>
<input type="button" value="复制到文件" onclick="copyFile()" />
<input type="button" value="复制到文件夹" onclick="copyFolder()" />
<input type="button" value="移动文件" onclick="moveFile()" />
<input type="button" value="移动到文件夹" onclick="moveFolder()" />
</body>
</html>


热点排行