android传送照片到FTP服务器

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

[java] view plaincopy

  1. package com.photo;
  2. import java.io.File;
  3. import java.io.FileInputStream;
  4. import java.io.FileNotFoundException;
  5. import java.io.IOException;
  6. import java.io.InputStream;
  7. import org.apache.commons.net.ftp.FTPClient;
  8. import org.apache.commons.net.ftp.FTPReply;
  9. public class FileTool {
  10. /**
  11. * Description: 向FTP服务器上传文件
  12. *
  13. * @param url
  14. *            FTP服务器hostname
  15. * @param port
  16. *            FTP服务器端口
  17. * @param username
  18. *            FTP登录账号
  19. * @param password
  20. *            FTP登录密码
  21. * @param path
  22. *            FTP服务器保存目录,是linux下的目录形式,如/photo/
  23. * @param filename
  24. *            上传到FTP服务器上的文件名,是自己定义的名字,
  25. * @param input
  26. *            输入流
  27. * @return 成功返回true,否则返回false
  28. */
  29. public static boolean uploadFile(String url, int port, String username,
  30. String password, String path, String filename, InputStream input) {
  31. boolean success = false;
  32. FTPClient ftp = new FTPClient();
  33. try {
  34. int reply;
  35. ftp.connect(url, port);// 连接FTP服务器
  36. // 如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器
  37. ftp.login(username, password);//登录
  38. reply = ftp.getReplyCode();
  39. if (!FTPReply.isPositiveCompletion(reply)) {
  40. ftp.disconnect();
  41. return success;
  42. }
  43. ftp.changeWorkingDirectory(path);
  44. ftp.storeFile(filename, input);
  45. input.close();
  46. ftp.logout();
  47. success = true;
  48. } catch (IOException e) {
  49. e.printStackTrace();
  50. } finally {
  51. if (ftp.isConnected()) {
  52. try {
  53. ftp.disconnect();
  54. } catch (IOException ioe) {
  55. }
  56. }
  57. }
  58. return success;
  59. }
  60. // 测试
  61. public static void main(String[] args) {
  62. FileInputStream in = null ;
  63. File dir = new File("G://pathnew");
  64. File files[] = dir.listFiles();
  65. if(dir.isDirectory()) {
  66. for(int i=0;i<files.length;i++) {
  67. try {
  68. in = new FileInputStream(files[i]);
  69. boolean flag = uploadFile("17.8.119.77", 21, "android", "android",
  70. "/photo/", "412424123412341234_20130715120334_" + i + ".jpg", in);
  71. System.out.println(flag);
  72. } catch (FileNotFoundException e) {
  73. e.printStackTrace();
  74. }
  75. }
  76. }
  77. }
  78. }

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

[java] view plaincopy

  1. package com.ftp;
  2. import java.io.File;
  3. import java.io.FileInputStream;
  4. import java.io.FileNotFoundException;
  5. import android.os.Bundle;
  6. import android.app.Activity;
  7. import android.util.Log;
  8. import android.view.Menu;
  9. public class MainActivity extends Activity {
  10. @Override
  11. protected void onCreate(Bundle savedInstanceState) {
  12. super.onCreate(savedInstanceState);
  13. setContentView(R.layout.activity_main);
  14. new uploadThread().start();
  15. }
  16. class uploadThread extends Thread {
  17. @Override
  18. public void run() {
  19. FileInputStream in = null ;
  20. File dir = new File("/mnt/sdcard/DCIM/Camera/test/");
  21. File files[] = dir.listFiles();
  22. if(dir.isDirectory()) {
  23. for(int i=0;i<files.length;i++) {
  24. try {
  25. in = new FileInputStream(files[i]);
  26. boolean flag = FileTool.uploadFile("17.8.119.77", 21, "android", "android",
  27. "/", "412424123412341234_20130715120334_" + i + ".jpg", in);
  28. System.out.println(flag);
  29. } catch (FileNotFoundException e) {
  30. e.printStackTrace();
  31. }
  32. }
  33. }
  34. }
  35. }
  36. }

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

http://blog.csdn.net/liuzhidong123/article/details/9341269

android传送照片到FTP服务器,布布扣,bubuko.com

时间: 2024-10-01 05:18:58

android传送照片到FTP服务器的相关文章

webapi批量上传照片到ftp服务器(base64)

一段demo.做的时候根据自己的需求改造下 public HttpResponseMessage AddVisitNew(HttpRequestMessage request, CustomerVisitAddNewModel model) { return CreateHttpPostResponse<long>(request, () => { var res = customerVisitInfoService.AddVisitNew(model, CurrentUserId);

用Python在Android手机上架FTP服务器

当我们没有带数据线却将手机上的文件共享到电脑上时,架个简单的FTP服务器 可以帮我们快速解决问题.以共享手机里的照片为例: 首先将电脑.手机接入同一个wifi. 然后,手机上用QPython执行以下脚本(不要关闭它,否知ftp服务也会关闭) import os import SimpleHTTPServer os.chdir('/storage/sdcard0/DCIM/Camera') SimpleHTTPServer.test() 之后,只需要在电脑浏览器里输入 ftp://手机的IP地址:

Android中FTP服务器搭建入门

ftp服务器简单介绍:FTP(File Transfer Protocol)是文件传输协议的简称. 作用:让用户连接上一个远程计算机(该计算机上运行着FTP服务器程序)察看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去. Apache 官网ftpserver有详细介绍和使用说明以及必要文件下载:http://mina.apache.org/ftpserver-project/embedding_ftpserver.html 首先要阅读官网上的介

Android:客户端通过HTTP连接服务器,完成注册并传送坐标信息

一.Main.xml 主要是2个Button和一个TextView."设备注册"点击后即向服务器发送设备的MAC.HolderName等信息:"坐标传送"则输送设备从iBeacon获取的坐标信息到服务器,经过定位算法处理后再从服务器传回修正坐标信息(因篇幅有限,本节暂不提坐标信息是如何获取的).下面的TextView用于实时显示状态信息.其他的View主要用于实际调试. <?xml version="1.0" encoding="

Ubuntu 配置vsftpd实现FTP服务器

0.vsftpd是啥玩意 都不知道安装了个啥东西,那就没意思了,所以先去了解下什么是vsftpd.vsftpd意思为"very secure FTP daemon(非常安全的FTP进程)",当然只有更安全没有最安全. 那它到底安全在哪里呢,主要体现在以下两点: 权限控制,vsftpd以一般用户登录,用户权限相对较小,对于系统就越安全,对于用户需要的系统级指令大部分被整合到vsftpd中了,用户不需要申请更高权限就足以完成绝大部分ftp指令:此外对于ftp本身内部的读写控制,vsftpd

Ubuntu安装和配置ftp服务器

习惯向服务器上传文件时使用scp命令,简单又安全,但是Wordpress的升级机制需要在使用ftp访问方式,所以只好在VPS下配置ftp服 务器,Linux下配置ftp服务器可以选用vsftp和wu-ftp,两者各有优势.个人比较推荐vsftp,除了中文乱码问题. VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全. Wu-Ftpd全称是Washington University FTP,

linux命令行模式下对FTP服务器进行文件上传下载

参考源:点击这里查看 1. 连接ftp服务器 格式:ftp [hostname| ip-address]a)在linux命令行下输入: ftp 192.168.1.1 b)服务器询问你用户名和密码,分别输入用户名和相应密码,待认证通过即可. 2. 下载文件 下载文件通常用get和mget这两条命令.a) get 格式:get [remote-file] [local-file]将文件从远端主机中传送至本地主机中.如要获取远程服务器上/usr/your/1.htm,则 ftp> get /usr/

RedHat6.2搭建FTP服务器

我的环境: A:Red Hat Enterprise 6.2 IP:192.168.16.12 此机作测试端 B:Red Hat Enterprise 6.2 IP:192.168.16.13 此机做FTP服务端 B机上搭建FTP服务器: 下载并安装vsftpd-2.2.2-6.el6_0.1.i686 [[email protected] ~]# rpm -ivh vsftpd-2.2.2-6.el6_0.1.i686.rpm 创建测试用户: [[email protected] ~]# us

什么是FTP服务器

FTP服务器,则是在互联网上提供存储空间的计算机,它们依照FTP协议提供服务. FTP的全称是File Transfer Protocol(文件传输协议).顾名思义,就是专门用来传输文件的协议.简单地说,支持FTP协议的服务器就是FTP服务器. 一般来说,用户联网的首要目的就是实现信息共享,文件传输是信息共享非常重要的一个内容之一.Internet上早期实现传输文件,并不是一件容易的事,我们知道 Internet是一个非常复杂的计算机环境,有PC,有工作站,有MAC,有大型机,据统计连接在Int