jdk1.7实现ftp上传文件
来源:互联网 发布:php.ini设置文件大小 编辑:程序博客网 时间:2024/06/06 04:20
import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.InetSocketAddress;import java.net.SocketAddress;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.List;import java.util.StringTokenizer;import sun.net.TelnetInputStream;import sun.net.TelnetOutputStream;import sun.net.ftp.FtpClient;import sun.net.ftp.FtpProtocolException;public class FtpUtil { private String localfilename; private String remotefilename; private FtpClient ftpClient; public void connectServer(String ip, int port, String user, String password, String path) throws FtpProtocolException{ try { ftpClient = FtpClient.create(); try { SocketAddress addr = new InetSocketAddress(ip, port); ftpClient.connect(addr); ftpClient.login(user, password.toCharArray()); System.out.println("login success!"); if (path.length() != 0) { // 把远程系统上的目录切换到参数path所指定的目录 ftpClient.changeDirectory(path); } } catch (FtpProtocolException e) { // TODO Auto-generated catch block e.printStackTrace(); } } catch (IOException ex) { ex.printStackTrace(); throw new RuntimeException(ex); } } public void closeConnect() { try { ftpClient.close(); System.out.println("disconnect success"); } catch (IOException ex) { System.out.println("not disconnect"); ex.printStackTrace(); throw new RuntimeException(ex); } } public boolean upload(String localFile, String remoteFile) throws FtpProtocolException { this.localfilename = localFile; this.remotefilename = remoteFile; OutputStream os = null; FileInputStream is = null; boolean flage = false; try { // 将远程文件加入输出流中 os = (OutputStream) ftpClient.putFileStream(this.remotefilename, true); // 获取本地文件的输入流 File file_in = new File(this.localfilename); is = new FileInputStream(file_in); // 创建一个缓冲区 byte[] bytes = new byte[1024]; int c; while ((c = is.read(bytes)) != -1) { os.write(bytes, 0, c); } System.out.println("upload success"); flage = true; // return true; } catch (IOException ex) { System.out.println("not upload"); ex.printStackTrace(); flage = false; throw new RuntimeException(ex); } finally { try { if (is != null) { is.close(); } } catch (IOException e) { e.printStackTrace(); } finally { try { if (os != null) { os.close(); } } catch (IOException e) { e.printStackTrace(); } } } return flage; } public void download(String remoteFile, String localFile) throws FtpProtocolException{ TelnetInputStream is = null; FileOutputStream os = null; try { // 获取远程机器上的文件filename,借助TelnetInputStream把该文件传送到本地。 is = (TelnetInputStream) ftpClient.getFileStream(remoteFile); File file_in = new File(localFile); os = new FileOutputStream(file_in); byte[] bytes = new byte[1024]; int c; while ((c = is.read(bytes)) != -1) { os.write(bytes, 0, c); } System.out.println("download success"); } catch (IOException ex){ System.out.println("not download"); ex.printStackTrace(); throw new RuntimeException(ex); } finally{ try{ if (is != null) { is.close(); } }catch (IOException e){ e.printStackTrace(); } finally{ try{ if (os != null) { os.close(); } } catch (IOException e) { e.printStackTrace(); } } } } public static void main(String agrs[]) { String filepath[] ={ "/aa.txt", "/regist.log" }; String localfilepath[] ={ "C:\\tmp\\1.txt", "C:\\tmp\\2.log" }; FtpUtil ftp = new FtpUtil(); try { ftp.connectServer(ftp的地址, 端口, 用户名, 密码, 路径); } catch (FtpProtocolException e) { e.printStackTrace(); } // 下载 String localfile = "D:/ceshi.jpg"; String remotefile = ftp上传路径"/javaftp测试.jpg"; // 上传 try { ftp.upload(localfile, remotefile); } catch (FtpProtocolException e) { e.printStackTrace(); } ftp.closeConnect(); }}
0 0
- jdk1.7实现ftp上传文件
- struts2+ftp文件上传+jdk1.7
- Ftp文件上传的实现
- Boost实现FTP上传文件
- Java实现ftp上传文件
- java实现ftp文件上传
- java实现FTP上传文件
- ftp实现文件上传(下载)
- ftp文件上传功能实现
- java实现ftp上传下载(jdk1.7以上)
- java通过apache ftp实现ftp上传文件,下载文件
- 用mule实现FTP文件上传
- shell实现ftp上传和下载文件
- 采用FTP协议实现文件的上传
- java实现的ftp文件上传例题
- java实现的ftp文件上传例题
- APPLET实现大文件FTP上传
- VB实现文件上传到FTP服务器
- [4] rw_《CSAPP》2Ed 8 11-12 章 《APUE》15章·简
- java 利用集合实现斗地主算法
- 如何做一名主程之Unity3D网络游戏服务器架构设计
- Activity学习笔记
- LeetCode 6. ZigZag Conversion 解题报告
- jdk1.7实现ftp上传文件
- WEB——Cookie案例
- RxJava操作符(一)Creating Observables
- RxJava操作符(二)Transforming Observables
- lnmp环境搭建
- RxJava操作符(三)Filtering
- 我心永恒
- Nginx动静分离
- RxJava操作符(四)Combining