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

📄 ftpapplet.java~3~

📁 希望能给大家带来方便,你们可以雉鸠有JAVA的软件进行验证
💻 JAVA~3~
字号:
package client;


import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.List;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.JToolBar;
import javax.swing.DefaultListModel;
import javax.swing.JTree;
import sun.net.TelnetInputStream;
import sun.net.ftp.FtpClient;
import sun.net.ftp.FtpLoginException;
class FtpApplet extends JFrame
implements ActionListener {
FtpClient ftp = null;
private List list = new List();
private JPanel FtpClientFrame = new JPanel(new BorderLayout());
private JPanel FtpClientFrameOne = new JPanel(new FlowLayout(FlowLayout.
LEFT));
private JPanel FtpClientFrameTwo = new JPanel(new GridLayout(1, 8));
private JPanel FtpClientFrameThree = new JPanel(new GridLayout(2, 1));
private JPanel FtpClientFrameFour = new JPanel(new GridLayout(1, 2));
//连接、断开按钮
private JButton linkButton = new JButton("连接");
//private JButton breakButton = new JButton("Break");
//连接状态
private JLabel statusLabel = new JLabel();
//用户登录
private JLabel urlLabel = new JLabel("地址:");
private JLabel usernameLabel = new JLabel("用户:");
private JLabel passwordLabel = new JLabel("密码:");
//private JLabel portLabel = new JLabel("port:");
private JTextField urlTextField = new JTextField(10);
private JTextField usernameTextField = new JTextField(10);
private JTextField passwordTextField = new JTextField(10);
//private JTextField portTextField = new JTextField(10);
//本地、远程窗口
DefaultListModel modelList = new DefaultListModel();
private JList localList = new JList();
private JList distanceList = new JList();
JScrollPane localScrollPane = new JScrollPane(localList);
JScrollPane distanceScrollPane = new JScrollPane(distanceList);
//本地、远程目录树
private JTree localTree;
private JTree ServerTree;
public FtpApplet() {
FtpClientFrameOne.add(linkButton);
//FtpClientFrameOne.add(breakButton);
FtpClientFrameOne.add(statusLabel);
FtpClientFrameTwo.add(urlLabel);
FtpClientFrameTwo.add(urlTextField);
FtpClientFrameTwo.add(usernameLabel);
FtpClientFrameTwo.add(usernameTextField);
FtpClientFrameTwo.add(passwordLabel);
FtpClientFrameTwo.add(passwordTextField);
//FtpClientFrameTwo.add(portLabel);
//FtpClientFrameTwo.add(portTextField);
FtpClientFrameThree.add(FtpClientFrameOne);
FtpClientFrameThree.add(FtpClientFrameTwo);
FtpClientFrameFour.add(localScrollPane);
FtpClientFrameFour.add(list);
FtpClientFrame.add(FtpClientFrameThree, "North");
FtpClientFrame.add(FtpClientFrameFour, "Center");
setContentPane(FtpClientFrame);
setTitle("FtpClient客户端");
setSize(600, 500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
linkButton.addActionListener(this);
//breakButton.addActionListener(this);
}
public String getDir(String path) {
String dirName;
int ch;
int begin = 55;
dirName = path.substring(begin).trim();
return dirName;
}
public void loadList() {
StringBuffer buf = new StringBuffer();
int ch;
list.removeAll();
try {
TelnetInputStream t = ftp.list();
t.setStickyCRLF(true);
while ( (ch = t.read()) >= 0) {
if (ch == '\n') {
list.add(getDir(buf.toString()));
buf.setLength(0);
}
else {
buf.append( (char) ch);
}
}
}
catch (IOException e) {
e.printStackTrace();
}
list.validate();
}
public void actionPerformed(ActionEvent evt) {
Object source = evt.getSource();
if (source == linkButton) {
//连接Ftp服务器
try {
if (ftp != null)
ftp.closeServer();
statusLabel.setText("连接中请等待.....");
ftp = new FtpClient(urlTextField.getText());
ftp.login(usernameTextField.getText(),
passwordTextField.getText());
ftp.binary();
}
catch (FtpLoginException e) {
JOptionPane.showMessageDialog(null, "Login Failure!!!");
e.printStackTrace();
}
catch (IOException e) {
JOptionPane.showMessageDialog(null,
urlTextField.getText() + "Connection Failure!!!");
e.printStackTrace();
}
catch (SecurityException e) {
JOptionPane.showMessageDialog(null, "No Purview!!!");
e.printStackTrace();
}
if (urlTextField.getText().equals(""))
JOptionPane.showMessageDialog(null, "Ftp服务器地址不能空!!!");
else if (usernameTextField.getText().equals(""))
JOptionPane.showMessageDialog(null, "用户名不能为空!!!");
else if (passwordTextField.getText().equals(""))
JOptionPane.showMessageDialog(null, "密码不能为空!!!");
else
statusLabel.setText("已连接到Ftp:" + urlTextField.getText());
loadList();
}
//if (source == breakButton) {
//System.exit(0);
}
//}
public static void main(String[] args) {
// TODO Auto-generated method stub
    FtpApplet ftpClientFrame = new FtpApplet();
}
}

⌨️ 快捷键说明

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