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

首先我们先看一下源程序,这里是连接到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
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值