|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
import sun.net.ftp.*; import sun.net.*; import java.awt.*; import java.awt.event.*; import java.applet.*; import java.io.*; public class FtpApplet extends Applet { FtpClient aftp; DataOutputStream outputs ; TelnetInputStream ins; TelnetOutputStream outs; TextArea lsArea; Label LblPrompt; Button BtnConn; Button BtnClose; TextField TxtUID; TextField TxtPWD; TextField TxtHost; int ch; public String a=\"没有连接主机\"; String hostname=\"\"; public void init () { setBackground(Color.white); setLayout(new GridBagLayout()); GridBagConstraints GBC = new GridBagConstraints(); LblPrompt = new Label(\"没有连接主机\"); LblPrompt.setAlignment(Label.LEFT); BtnConn = new Button(\"连接\"); BtnClose = new Button(\"断开\"); BtnClose.enable(false); TxtUID = new TextField(\"\",15); TxtPWD = new TextField(\"\",15); TxtPWD.setEchoCharacter(’*’); TxtHost = new TextField(\"\",20); Label LblUID = new Label(\"User ID:\"); Label LblPWD = new Label(\"PWD:\"); Label LblHost = new Label(\"Host:\"); lsArea = new TextArea(30,80); lsArea.setEditable(false); GBC.gridwidth= GridBagConstraints.REMAINDER; GBC.fill = GridBagConstraints.HORIZONTAL; ((GridBagLayout)getLayout()).setConstraints(LblPrompt,GBC); add(LblPrompt); GBC.gridwidth=1; ((GridBagLayout)getLayout()).setConstraints(LblHost,GBC); add(LblHost); GBC.gridwidth=GridBagConstraints.REMAINDER; ((GridBagLayout)getLayout()).setConstraints(TxtHost,GBC); add(TxtHost); GBC.gridwidth=1; ((GridBagLayout)getLayout()).setConstraints(LblUID,GBC); add(LblUID); GBC.gridwidth=1; ((GridBagLayout)getLayout()).setConstraints(TxtUID,GBC); add(TxtUID); GBC.gridwidth=1; ((GridBagLayout)getLayout()).setConstraints(LblPWD,GBC); add(LblPWD); GBC.gridwidth=1; ((GridBagLayout)getLayout()).setConstraints(TxtPWD,GBC); add(TxtPWD); GBC.gridwidth=1; GBC.weightx=2; ((GridBagLayout)getLayout()).setConstraints(BtnConn,GBC); add(BtnConn); GBC.gridwidth=GridBagConstraints.REMAINDER; ((GridBagLayout)getLayout()).setConstraints(BtnClose,GBC); add(BtnClose); GBC.gridwidth=GridBagConstraints.REMAINDER; GBC.fill = GridBagConstraints.HORIZONTAL; ((GridBagLayout)getLayout()).setConstraints(lsArea,GBC); add(lsArea); } public boolean connect(String hostname, String uid,String pwd) { this.hostname = hostname; LblPrompt.setText(\"正在连接,请等待.....\"); try{ aftp =new FtpClient(hostname); aftp.login(uid,pwd); aftp.binary(); showFileContents(); } catch(FtpLoginException e){ a=\"无权限与主机:\"+hostname+\"连接!\"; LblPrompt.setText(a); return false; } catch (IOException e){ a=\"连接主机:\"+hostname+\"失败!\"; LblPrompt.setText(a); return false; } catch(SecurityException e) { a=\"无权限与主机:\"+hostname+\"连接!\"; LblPrompt.setText(a); return false; } LblPrompt.setText(\"连接主机:\"+hostname+\"成功!\"); return true; } public void stop() { try { aftp.closeServer(); } catch(IOException e) { } } public void paint(Graphics g){ } public boolean action(Event evt,Object obj) { if (evt.target == BtnConn) { LblPrompt.setText(\"正在连接,请等待.....\"); if (connect(TxtHost.getText(),TxtUID.getText(),TxtPWD.getText())) { BtnConn.setEnabled(false); BtnClose.setEnabled(true); } return true; } if (evt.target == BtnClose) { stop(); BtnConn.enable(true); BtnClose.enable(false); LblPrompt.setText(\"与主机\"+hostname+\"连接已断开!\"); return true; } return super.action(evt,obj); } public boolean sendFile(String filepathname){ boolean result=true; if (aftp != null) { LblPrompt.setText(\"正在粘贴文件,请耐心等待....\"); String contentperline; try{ a=\"粘贴成功!\"; String fg =new String(\"//\"); int index = filepathname.lastIndexOf(fg); String filename = filepathname.substring(index+1); File localFile ; localFile = new File(filepathname) ; RandomAccessFile sendFile = new RandomAccessFile(filepathname,\"r\"); // sendFile.seek(0); outs = aftp.put(filename); outputs = new DataOutputStream(outs); while (sendFile.getFilePointer() < sendFile.length() ) { ch = sendFile.read(); outputs.write(ch); } outs.close(); sendFile.close(); } catch(IOException e){ a = \"粘贴失败!\"; result = false ; } LblPrompt.setText(a); showFileContents(); } else{ result = false; } return result; } public void showFileContents() { StringBuffer buf = new StringBuffer(); lsArea.setText(\"\"); try { ins= aftp.list(); while ((ch=ins.read())>=0){ buf.append((char)ch); } lsArea.appendText(buf.toString()); ins.close(); } catch(IOException e) { } } public static void main(String args[]){ Frame f = new Frame(\"FTP Client\"); f.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){ System.exit(0); } }); FtpApplet ftp = new FtpApplet(); ftp.init(); ftp.start(); f.add(ftp); f.pack(); f.setVisible(true); } } 返回类别: 教程 上一教程: 推荐两本iava书 下一教程: 什么是Extreme Programming(极限编程,简称XP) 您可以阅读与"java实现FTP功能(源代码)"相关的教程: · 在JAVA应用程序中如何实现FTP的功能 · 在JAVA应用程序中如何实现FTP的功能 (转) · 一个简朴的用JAVA实现的屏幕抓图(源代码) · JAVA 的MD5加密算法源代码 · JavaScript源代码集锦 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |