使用java程序用FTP的方式的上传文件

来源:互联网 发布:别踩白块儿java源代码 编辑:程序博客网 时间:2024/05/06 21:51

首先我们先看一下源程序,这里是连接到FTP服务器后然后打印,FTP服务器上的文件目录

import java.io.IOException;import java.net.SocketException;import org.apache.commons.net.ftp.FTPClient;import org.apache.commons.net.ftp.FTPFile;import java.nio.charset.Charset;import java.io.*;public class FtpDemo{    /*       获取FTP服务器上所有的目录    */public static void conn(){     //初始化FTP客服端    FTPClient ftp = new FTPClient();      try{//通过IP跟端口进行连接//192.168.20.111 是我FTP服务器的IP,你需要换成你自己的                        ftp.connect("192.168.20.111",21);                 //登录名,密码    ftp.login("ms","ms");     //设置编码                        ftp.setCharset(Charset.forName("UTF-8"));ftp.setControlEncoding("UTF-8");   //获取目录列表存放在数组中 FTPFile files[] = ftp.listDirectories();   for(int i = 0; i < files.length; i++){          FTPFile file = files[i];        //获取文件名    String fileName = file.getName();       //打印文件名                                System.out.println(fileName);                        }                }catch(SocketException e){                        e.printStackTrace();                }catch(IOException e){                        e.printStackTrace();                }finally{                        try{                                Thread.sleep(500);                        }catch(InterruptedException e1){                                e1.printStackTrace();                        }                        try{                                ftp.abor();                        }catch(IOException e){                                e.printStackTrace();                        }                }        }        public static void main(String args[]){                conn();        }}

Ftp得到目录

使用FTP连接手机上传文件:

这里我们要注意我们要有一个能开启ftp服务的手机,小米手机是默认可以开启的,iPhone手机则可以使用移动U盘,其他安卓手机则可以上网查找一下。

public static void conn(){                FTPClient ftp = new FTPClient();                try{                //手机ip及端口号                ftp.connect("192.168.20.87",20000);                //使用匿名用户登录                ftp.login("anonymous","");                ftp.setCharset(Charset.forName("UTF-8"));                ftp.setControlEncoding("UTF-8");//手机文件夹目录及上传文件的名称,后一个是上传的文件目录及名称                ftp.storeFile("/private/var/mobile/Containers/Data/Application/E40FEB6C-1220-490A-8634-A730771D84C0/Documents/shaojie.java",new FileInputStream("/dog/Dog.java"));                 }catch(Exception e){                        e.printStackTrace();                }finally{                        try{                                ftp.abor();                        }catch(Exception e){                                e.printStackTrace();                        }                }        }

效果截图:
ftp上传手机截图

删除文件

public static void deleteFile(){     FTPClient ftp = new FTPClient();        try{                ftp.connect("192.168.20.243",20000);                ftp.login("anonymous","");                ftp.setCharset(Charset.forName("UTF-8"));                ftp.setControlEncoding("UTF-8");                ftp.deleteFile("/private/var/mobile/Containers/Data/Application/E40FEB6C-1220-490A-8634-A730771D84C0/Documents/shaojie.java");        }catch(Exception e){        e.printStackTrace();        }finally{                try{        ftp.abor();        }catch(Exception e){        e.printStackTrace();        }        }}

效果截图:
ftp删除文件

这里也可以更数据库结合起来,就可以,只更改数据中的数据。就可以实现向多台手机发送信息。

0 0
原创粉丝点击