首页 > 系统 > Android > 正文

android传送照片到FTP服务器的实现代码

2019-10-21 21:48:57
字体:
来源:转载
供稿:网友

本文实例为大家分享了android传送照片到FTP服务器的具体代码,供大家参考,具体内容如下

在安卓环境下可以使用,在java环境下也可以使用,本人先在Java环境下实现了功能,然后移植到了安卓手机上,其它都是一样的。

package com.photo; import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream; import org.apache.commons.net.ftp.FTPClient;import org.apache.commons.net.ftp.FTPReply; public class FileTool {  /** * Description: 向FTP服务器上传文件 *  * @param url *      FTP服务器hostname * @param port *      FTP服务器端口 * @param username *      FTP登录账号 * @param password *      FTP登录密码 * @param path *      FTP服务器保存目录,是linux下的目录形式,如/photo/ * @param filename *      上传到FTP服务器上的文件名,是自己定义的名字, * @param input *      输入流 * @return 成功返回true,否则返回false */ public static boolean uploadFile(String url, int port, String username,  String password, String path, String filename, InputStream input) { boolean success = false; FTPClient ftp = new FTPClient();   try {  int reply;  ftp.connect(url, port);// 连接FTP服务器  // 如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器  ftp.login(username, password);//登录  reply = ftp.getReplyCode();  if (!FTPReply.isPositiveCompletion(reply)) {  ftp.disconnect();  return success;  }  ftp.changeWorkingDirectory(path);  ftp.storeFile(filename, input);   input.close();  ftp.logout();  success = true; } catch (IOException e) {  e.printStackTrace(); } finally {  if (ftp.isConnected()) {  try {   ftp.disconnect();  } catch (IOException ioe) {  }  } } return success; }  // 测试 public static void main(String[] args) {  FileInputStream in = null ; File dir = new File("G://pathnew"); File files[] = dir.listFiles(); if(dir.isDirectory()) {  for(int i=0;i<files.length;i++) {  try {   in = new FileInputStream(files[i]);   boolean flag = uploadFile("17.8.119.77", 21, "android", "android",    "/photo/", "412424123412341234_20130715120334_" + i + ".jpg", in);   System.out.println(flag);  } catch (FileNotFoundException e) {   e.printStackTrace();  }  } }  }}

以上为java代码,下面是android代码。

package com.ftp; import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException; import android.os.Bundle;import android.app.Activity;import android.util.Log;import android.view.Menu; public class MainActivity extends Activity {  @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);  new uploadThread().start(); }  class uploadThread extends Thread { @Override public void run() {  FileInputStream in = null ;  File dir = new File("/mnt/sdcard/DCIM/Camera/test/");  File files[] = dir.listFiles();  if(dir.isDirectory()) {  for(int i=0;i<files.length;i++) {   try {    in = new FileInputStream(files[i]);   boolean flag = FileTool.uploadFile("17.8.119.77", 21, "android", "android",    "/", "412424123412341234_20130715120334_" + i + ".jpg", in);   System.out.println(flag);   } catch (FileNotFoundException e) {   e.printStackTrace();   }  }  } } }}

经过本人测试通过,可正常运行,仅供参考,如有疑问请与我联系。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持VEVB武林网。


注:相关教程知识阅读请移步到Android开发频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表