`
bashenmail
  • 浏览: 227842 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android 下的ftp注意问题

阅读更多

以下代码在pc上测试通过,可是在android模拟器上就不工作,不过还可以链接到服务器但不能得到文件 纠结了半天,原来是模式的问题,具体请Google 模拟器中采用建议被动模式

 

	public void doWork(){
		
		
		FTPClient ftp = new FTPClient();
		
		try {
			ftp.connect(server);
			
			System.out.println("Connected to " + server);
		    System.out.print(ftp.getReplyString());

		    reply = ftp.getReplyCode();
		    
		    if(!FTPReply.isPositiveCompletion(reply)) {
		        ftp.disconnect();
		        System.err.println("FTP server refused connection.");
		        System.exit(1);
		     }
		    ftp.login(username, password);
		    
		    FTPFile[] files = ftp.listFiles("/");
		    
		    if(files!=null&&files.length>0){
		    	
		    	for(FTPFile f:files){
		    		
		    		System.out.println("user:>>>"+f.getUser()+" name:>>>"+f.getName()+" size:>>>"+f.getSize()+" link:>>>"+f.getLink());
		    		
		    	}
		    }
		} catch (SocketException e) {
			
			e.printStackTrace();
		} catch (IOException e) {
			
			e.printStackTrace();
		}
		
		
	}

 加上被动模式之后,代码如下:

 

public void doWork(){
		
		
		FTPClient ftp = new FTPClient();
		
		try {
			ftp.connect(server);
			
			System.out.println("Connected to " + server);
		    System.out.print(ftp.getReplyString());

		    reply = ftp.getReplyCode();
		    
		    if(!FTPReply.isPositiveCompletion(reply)) {
		        ftp.disconnect();
		        System.err.println("FTP server refused connection.");
		        System.exit(1);
		     }
		    ftp.login(username, password);
		   
		    //设置为被动模式
		   ftp.enterLocalPassiveMode();
		    
		    FTPFile[] files = ftp.listFiles("/");
		    
		    if(files!=null&&files.length>0){
		    	
		    	for(FTPFile f:files){
		    		
		    		System.out.println("user:>>>"+f.getUser()+" name:>>>"+f.getName()+" size:>>>"+f.getSize()+" link:>>>"+f.getLink());
		    		
		    	}
		    }
		} catch (SocketException e) {
			
			e.printStackTrace();
		} catch (IOException e) {
			
			e.printStackTrace();
		}
		
		
	}

 终于工作了...

分享到:
评论

相关推荐

    Android使用ftp方式实现文件上传和下载

    Android 使用 FTP 方式实现文件上传和下载 Android 使用 FTP 方式实现文件上传和下载是移动应用开发中的一项重要功能,特别是在 OTA ...同时,需要注意 FTP 协议的安全性和稳定性问题,以确保文件传输的安全和可靠性。

    android的ftp4j的jar包

    需要注意的是,由于Android系统的安全限制,使用FTP4J可能需要在应用的`AndroidManifest.xml`中添加Internet权限: ```xml <uses-permission android:name="android.permission.INTERNET" /> ``` 在实际开发中,...

    android-ftp.zip_Android FTP_android_android ftp_android ftp cli

    然而,理论上可以创建一个运行在Android设备上的小型FTP服务器,但这需要处理许多安全和资源限制问题。例如,你需要考虑数据流量、电池消耗以及可能的安全风险,如未经授权的访问。一般情况下,Android设备更适合...

    android 通过ftp协议访问服务器上的目录,通过listview 展示

    在这个场景下,FTP(File Transfer Protocol)协议是一种常见的选择。本项目“android 通过ftp协议访问服务器上的目录,通过listview 展示”就是实现了这样一个功能,允许用户浏览服务器上的目录并展示在ListView中...

    Android_FTP.zip_android_android ftp_ftp android

    在Android平台上实现FTP(文件传输协议)功能是移动应用开发中的常见需求,特别是在需要与远程服务器交换文件的场景下。本资源"Android_FTP.zip"包含了一套Android FTP客户端的实现,可以帮助开发者轻松地集成FTP...

    android ftp server code

    在Android平台上实现FTP服务器,通常是为了让设备能够作为数据共享的中心,允许其他设备通过FTP协议上传或下载文件。这个“android ftp server code”项目很可能就是这样一个实现,它基于一个名为SwiFTP的开源库。...

    AndroidFTP功能集合

    在Android开发中,集成FTP(File Transfer Protocol)功能可以实现远程服务器上的文件上传、下载、管理等操作。这里我们主要探讨如何使用`commons-net`库来实现这些功能。`commons-net`是Apache Commons项目的一部分...

    Android FTP 服务端工具

    由于链接未提供具体内容,我们无法直接获取详细信息,但通常这类文章会涵盖以下内容:安装步骤、配置方法、连接参数设置、安全注意事项以及可能遇到的问题与解决方案。 标签“源码”表明这个FTP服务端工具可能提供...

    Swiftp Android Ftp

    尽管SwiftP Android FTP 提供了便利,但在实际使用中也需要注意一些问题: - 性能:由于Android设备硬件资源有限,长时间运行FTP服务器可能会影响设备性能。 - 安全:开放FTP服务可能会面临网络安全风险,因此建议...

    android ftp动态修改根目录方法

    在某些场景下,我们可能需要动态地更改FTP服务器的根目录,以适应不同的存储需求。本文将深入探讨如何在Android应用中实现这个功能。 首先,我们需要了解FTP客户端的基本操作。Android中可以通过第三方库如Apache ...

    Android的ftp下载示例

    需要注意的是,在实际应用中,还需要处理各种异常情况,如网络连接问题、文件不存在等,并确保在完成操作后释放所有资源。此外,为了提供更好的用户体验,可以使用异步任务或者Android的`AsyncTask`来实现下载操作,...

    Android上传文件到FTP

    在Android平台上,将文件上传至FTP(File Transfer Protocol)服务器是一项常见的任务,尤其在处理用户数据备份、资源共享或媒体分享时。本知识点主要探讨如何在Android应用中实现在SD卡中选择图片并上传到FTP服务器...

    Android FTP上传带进度条(优化后代码)

    在Android开发中,FTP(文件传输协议)上传和下载功能是非常常见的一种需求,尤其是在涉及到文件交换的应用场景。本文将详细讲解如何实现一个带有进度条的Android FTP上传功能,并结合Fresco库来处理网络和本地图片。 ...

    swiftp(Android上的FTP服务器 SwiFTP)

    SwiFTP是一款专门为Android操作系统设计的FTP服务器应用,它允许用户将Android设备作为一个FTP服务器来使用,方便在不同设备间传输文件。FTP(File Transfer Protocol)是一种标准的网络协议,用于在互联网上进行...

    Android开发 FTP服务器测试demo

    在Android中运行FTP服务器需要注意权限问题,因为需要监听网络端口,所以需要在`AndroidManifest.xml`中添加`INTERNET`和`ACCESS_NETWORK_STATE`权限: ```xml <uses-permission android:name="android.permission....

    android实现ftp断点续传下载类,完成后自动通知调用程序

    在Android平台上实现FTP断点续传下载功能,可以极大地提高用户下载大文件的效率和体验。断点续传允许应用程序在文件下载中断后从上次停止的地方继续,而不是重新开始整个下载过程。以下是对这一主题的详细阐述: 1....

    Android Studio实现FTP分割文件上传

    在这个"Android Studio实现FTP分割文件上传"的例子中,我们将探讨如何在Android Studio中实现这个功能,尤其是针对FTP协议进行文件的分块上传。 首先,理解FTP(File Transfer Protocol)是互联网上用于在主机之间...

    android ftp4j上传下载带进度条

    需要注意的是,FTP4J库并不直接支持断点续传或多线程传输,这可能导致大文件传输性能不佳。如果需要这些特性,可能需要寻找其他更高级的FTP库或自己实现相关逻辑。 总的来说,通过FTP4J库,开发者可以在Android应用...

    android的FTP的jar包

    在Android中使用FTP服务时,需要注意权限问题。你需要在AndroidManifest.xml文件中添加INTERNET权限,以允许应用访问网络: ```xml <uses-permission android:name="android.permission.INTERNET" /> ``` FTP的...

    Android 利用commons-net-3.3实现ftp上传下载Demo

    在Android开发中,有时我们需要与远程服务器进行数据交互,例如上传或下载文件。FTP(File Transfer Protocol)是一...不过,注意在实际开发中,应根据具体需求选择合适的FTP操作方式,同时确保代码的健壮性和安全性。

Global site tag (gtag.js) - Google Analytics