⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 downloadfile.java

📁 java网络高级编程的配套源码,java网络高级编程为清华出版社出版.
💻 JAVA
字号:
/*源程序清单12-24*/

package ftp;

import sun.net.ftp.*;
import java.util.*;
import java.io.*;
import java.net.*;

class DownloadFile extends Thread
{//下载文件类,作为一个线程,可同时下载多个文件
  String ip="";
  String username="";
  String password="";
  String path="";
  String filename="";
  String directory="";
  MainFrame frame=null;

  public DownloadFile(MainFrame frame,String ip,String username,String password,String path,String filename,String userpath)
  {
    this.ip=ip;
    this.username=username;
    this.password=username;
    this.path=path;
    this.filename=filename;
    this.directory=userpath;
    this.frame=frame;
  }

  public void run()
  {
   try
   {
      String savefilename=directory;
      FtpClient ftpClient=new FtpClient();
      ftpClient.openServer(ip);
	    ftpClient.login(username, password);
      if (path.length()!=0) ftpClient.cd(path);
      ftpClient.binary();
	    InputStream is=ftpClient.get(filename);
	    File file_out=new File(savefilename);
      FileOutputStream os=new FileOutputStream(file_out);
      byte[] bytes=new byte[1024];
      int c;
      frame.list1.add(filename);
      frame.textArea1.append("正在下载文件"+filename+"  ,请稍候...\n");
      while ((c=is.read(bytes))!=-1)
      {
       os.write(bytes,0,c);
       }
      frame.list1.remove(filename);
      frame.textArea1.append("文件"+filename+"下载完成.\n");
      is.close();
      os.close();
      ftpClient.closeServer();
      frame.downFile.removeElement(this);
      stop();
     }
     catch(Exception e)
     {
      frame.textArea1.append("文件"+filename+"下载出错!\n");
    }
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -