(服务器是共享的,可以操作。)
16 个解决方案
#1
这类代码网上应该有很多的
#2
*从服务器中下载文件到本地*/
/*url:文件存放在服务器的地址;target:要保存的路径*/
public String DownloadFile(String url,String target){
URLConnection con=null;
URL theUrl=null;
try {
theUrl=new URL(url);//建立地址
con = theUrl.openConnection();//打开连接
con.setConnectTimeout(30000);
con.connect();//连接
} catch (MalformedURLException e) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, e);
return "给定的URL地址有误,请查看";
}
catch (IOException e) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, e);
return "无法连接到远程机器,请重试!";
}
jLabel5.setText("√");
Process++;
File file = new File(gbl_ParentPath+"/UpdateTemp");
if(file.exists()==false){
file.mkdir();
}
String type = con.getContentType();
if (type != null) {
byte[] buffer = new byte[4 * 1024];
int read;
try {
FileOutputStream os = new FileOutputStream(target);
InputStream in = con.getInputStream();//重定向输入
while ((read = in.read(buffer)) > 0) {//读取输出
os.write(buffer, 0, read);//写入本地文件
}
os.close();
in.close();
jLabel6.setText("√");
Process++;
} catch (FileNotFoundException e) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, e);
return "所要下载的文件不存在!";
}catch (IOException e) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, e);
return "读取远程文件时出错!";
}
} else {
return "文件未找着:"+url;
}
return "";
}
这个是我从网上找的,可是我不清楚 url:文件存放在服务器的地址 和 target:要保存的路径 如何传入参数。请高手指点。
#3
楼上的 下载是正确的,只需修改成自己想要的情况就行,思路是这样
#4
怀疑做不到。
#5
如果可以做到,我首先下载一个病毒到你的机器上面!
这东西想一下就知道不靠ActiveX等技术,只通过浏览器是根本不可能做到的。否则安全性何在?!
这东西想一下就知道不靠ActiveX等技术,只通过浏览器是根本不可能做到的。否则安全性何在?!
#6
学习下。
#7
楼主又没说自动下载。。。让客户端点下载点东西有你说的那么恐怖吗。。。人家又不是要做木马
#8
学习下
#9
这个
#10
已经等了一天了,高手帮帮忙吧
#11
这个是在服务器上运行的程序还是在客户端上运行的程序?
#12
服务器端的话,就要用到ActiceXObject了,而且还要用户确认
客户端的话,那就简单了。
客户端的话,那就简单了。
#13
用浏览器是肯定不行的
#14
是在 2个服务器端之间 运行的,从这个服务器复制到另外一个服务器 。你们谁有源代码 贴出来
#15
估计不太好搞
#16
// 设置响应头和下载保存的文件名
response.reset();
response.setContentType("APPLICATION/OCTET-STREAM; charset=UTF-8");
response.setHeader("Content-Disposition", "attachment; filename=\"" + sSrcFile + "\"");
// 打开指定文件的流信息
java.io.FileInputStream fileInputStream = null;
java.io.OutputStream os = null;
try{
fileInputStream = new java.io.FileInputStream("文件服务器端路径");
// 写出流信息
byte buffer[] = new byte[65000];
int i;
os = response.getOutputStream();
while( (i=fileInputStream.read(buffer, 0, 65000))>0 ) {
os.write(buffer, 0, i);
}
os.flush();
}catch(Exception ex){
throw new Exception("写文件失败", ex);
}finally{
if(fileInputStream!=null){
try{
fileInputStream.close();
fileInputStream = null;
}
catch(Exception ex){}
}
if(os!=null){
try{
os.close();
os = null;
}
catch(Exception ex){}
}
//out.clear();
}
response.reset();
response.setContentType("APPLICATION/OCTET-STREAM; charset=UTF-8");
response.setHeader("Content-Disposition", "attachment; filename=\"" + sSrcFile + "\"");
// 打开指定文件的流信息
java.io.FileInputStream fileInputStream = null;
java.io.OutputStream os = null;
try{
fileInputStream = new java.io.FileInputStream("文件服务器端路径");
// 写出流信息
byte buffer[] = new byte[65000];
int i;
os = response.getOutputStream();
while( (i=fileInputStream.read(buffer, 0, 65000))>0 ) {
os.write(buffer, 0, i);
}
os.flush();
}catch(Exception ex){
throw new Exception("写文件失败", ex);
}finally{
if(fileInputStream!=null){
try{
fileInputStream.close();
fileInputStream = null;
}
catch(Exception ex){}
}
if(os!=null){
try{
os.close();
os = null;
}
catch(Exception ex){}
}
//out.clear();
}
#1
这类代码网上应该有很多的
#2
*从服务器中下载文件到本地*/
/*url:文件存放在服务器的地址;target:要保存的路径*/
public String DownloadFile(String url,String target){
URLConnection con=null;
URL theUrl=null;
try {
theUrl=new URL(url);//建立地址
con = theUrl.openConnection();//打开连接
con.setConnectTimeout(30000);
con.connect();//连接
} catch (MalformedURLException e) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, e);
return "给定的URL地址有误,请查看";
}
catch (IOException e) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, e);
return "无法连接到远程机器,请重试!";
}
jLabel5.setText("√");
Process++;
File file = new File(gbl_ParentPath+"/UpdateTemp");
if(file.exists()==false){
file.mkdir();
}
String type = con.getContentType();
if (type != null) {
byte[] buffer = new byte[4 * 1024];
int read;
try {
FileOutputStream os = new FileOutputStream(target);
InputStream in = con.getInputStream();//重定向输入
while ((read = in.read(buffer)) > 0) {//读取输出
os.write(buffer, 0, read);//写入本地文件
}
os.close();
in.close();
jLabel6.setText("√");
Process++;
} catch (FileNotFoundException e) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, e);
return "所要下载的文件不存在!";
}catch (IOException e) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, e);
return "读取远程文件时出错!";
}
} else {
return "文件未找着:"+url;
}
return "";
}
这个是我从网上找的,可是我不清楚 url:文件存放在服务器的地址 和 target:要保存的路径 如何传入参数。请高手指点。
#3
楼上的 下载是正确的,只需修改成自己想要的情况就行,思路是这样
#4
怀疑做不到。
#5
如果可以做到,我首先下载一个病毒到你的机器上面!
这东西想一下就知道不靠ActiveX等技术,只通过浏览器是根本不可能做到的。否则安全性何在?!
这东西想一下就知道不靠ActiveX等技术,只通过浏览器是根本不可能做到的。否则安全性何在?!
#6
学习下。
#7
楼主又没说自动下载。。。让客户端点下载点东西有你说的那么恐怖吗。。。人家又不是要做木马
#8
学习下
#9
这个
#10
已经等了一天了,高手帮帮忙吧
#11
这个是在服务器上运行的程序还是在客户端上运行的程序?
#12
服务器端的话,就要用到ActiceXObject了,而且还要用户确认
客户端的话,那就简单了。
客户端的话,那就简单了。
#13
用浏览器是肯定不行的
#14
是在 2个服务器端之间 运行的,从这个服务器复制到另外一个服务器 。你们谁有源代码 贴出来
#15
估计不太好搞
#16
// 设置响应头和下载保存的文件名
response.reset();
response.setContentType("APPLICATION/OCTET-STREAM; charset=UTF-8");
response.setHeader("Content-Disposition", "attachment; filename=\"" + sSrcFile + "\"");
// 打开指定文件的流信息
java.io.FileInputStream fileInputStream = null;
java.io.OutputStream os = null;
try{
fileInputStream = new java.io.FileInputStream("文件服务器端路径");
// 写出流信息
byte buffer[] = new byte[65000];
int i;
os = response.getOutputStream();
while( (i=fileInputStream.read(buffer, 0, 65000))>0 ) {
os.write(buffer, 0, i);
}
os.flush();
}catch(Exception ex){
throw new Exception("写文件失败", ex);
}finally{
if(fileInputStream!=null){
try{
fileInputStream.close();
fileInputStream = null;
}
catch(Exception ex){}
}
if(os!=null){
try{
os.close();
os = null;
}
catch(Exception ex){}
}
//out.clear();
}
response.reset();
response.setContentType("APPLICATION/OCTET-STREAM; charset=UTF-8");
response.setHeader("Content-Disposition", "attachment; filename=\"" + sSrcFile + "\"");
// 打开指定文件的流信息
java.io.FileInputStream fileInputStream = null;
java.io.OutputStream os = null;
try{
fileInputStream = new java.io.FileInputStream("文件服务器端路径");
// 写出流信息
byte buffer[] = new byte[65000];
int i;
os = response.getOutputStream();
while( (i=fileInputStream.read(buffer, 0, 65000))>0 ) {
os.write(buffer, 0, i);
}
os.flush();
}catch(Exception ex){
throw new Exception("写文件失败", ex);
}finally{
if(fileInputStream!=null){
try{
fileInputStream.close();
fileInputStream = null;
}
catch(Exception ex){}
}
if(os!=null){
try{
os.close();
os = null;
}
catch(Exception ex){}
}
//out.clear();
}