android 上传数据至 ftp服务器

本文详述了在Windows 7系统下搭建FTP服务器的全过程,包括功能开启、用户添加、文件夹设置、服务器添加及防火墙配置,同时提供了在Android设备上实现数据上传的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.windows7建立ftp服务器
1.ftp功能开启
控制面板->程序->程序和功能->打开或关闭windows功能
->打开Internet信息服务中的ftp服务器全部功能
web管理工具
IIS管理控制台
2.ftp用户添加
计算机管理->用户->创建用户->设置用户密码和权限
3.ftp文件夹设置
新建文件夹用于ftp服务器控制
右键文件夹->属性->安全->编辑->添加->高级->立即查找->选择用户
->确定->确定->权限改为完全控制->应用->确定
4.ftp服务器添加
右键我的电脑->计算机管理->服务和应用程序
->Internet信息服务(IIS)管理器->右键网站添加tfp站点
->站点名称随意->物理路径为上个步骤ftp文件夹
->ip全部未分配->端口21(若已占用请修改)->ssl无->身份验证基本
->允许所有用户访问->权限读取与写入->完成
5.测试访问ftp
打开我的电脑,在地址栏输入ftp地址(默认端口21,可省略)
例如: ftp://192.168.0.111
若无法连接,可能是防火墙

二.特殊处理
1.windows10防火墙开启ftp
控制面板\系统和安全\Windows Defender 防火墙 ->高级设置 ->入站规则->按组筛选->按FTP服务器筛选->全部启用在这里插入图片描述
2.开启端口(当端口21被占用,使用另外的端口,可能无法通过防火墙)
通过netstat -ano 查看端口占用情况
右键入站规则->新建规则->端口->TCP 填写端口 ->按步骤完成

三.android上传数据
    添加权限:
    <uses-permission android:name="android.permission.INTERNET" />
    
	依赖添加 build.gradle dependencies
	implementation 'commons-net:commons-net:3.6'
	
	网络访问需要开启新线程,代码:
	FTPClient ftpClient = new FTPClient();
	try {
		ftpClient.connect(ip,port);
		ftpClient.login(ftpUser,ftpPassword);
		int reply =ftpClient.getReplyCode();
		if(reply!=230){ //连接异常}
            
		// 设置文件传输模式
		 ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
		 ftpClient.enterLocalPassiveMode();
		 
        /*boolean changeDirResult=ftpClient.changeWorkingDirectory("/test");
        Log.d("", "run: changeDirResult: "+changeDirResult);*/

		OutputStream outputStream = ftpClient.appendFileStream(fileName);
		if(outputStream!=null) {
			outputStream.write(str.getBytes());
			outputStream.flush();
			outputStream.close();
		}
		if(ftpClient.completePendingCommand()){ //上传成功};
		ftpClient.disconnect();
	} catch (IOException e) {
		e.printStackTrace();
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值