-
大小: 9KB文件类型: .java金币: 1下载: 0 次发布日期: 2021-06-10
- 语言: Java
- 标签: FTPS FTPSClient Android
资源简介
FTPS是上传方法以及下载(绝对福利帖子,经过验证完全OK)!
代码片段和文件信息
package com.qwcrom.towngasprepayment.utils;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPReply;
import org.apache.commons.net.ftp.FTPSClient;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.security.KeyManagementException;
import java.security.NoSuchAlgorithmException;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
import javax.net.ssl.SSLContext;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;
/**
* FTPS上传工具类
*
* @author J.query
* @date 2018/11/8
* @email j-query@foxmail.com
*/
public class FTPSUploadUtils {
private static FTPSClient ftpsClient;
/**
* @param host
* @param port
* @param userName 用户名
* @param password 密码
* @param basePath 服务器文件根目录
* @param localFileName 文件本地地址
* @param remoteFileName 服务器实际目录
* @return
* @throws IOException
* @throws NoSuchAlgorithmException
* @throws KeyManagementException
*/
public static boolean upLoadFile(String host int port String userName String password String basePath String localFileName
String remoteFileName) throws IOException NoSuchAlgorithmException KeyManagementException {
boolean result = false;
final int dataTimeout = 10000;
final int timeout = 100000;
X509TrustManager x509m = new X509TrustManager() {
@Override
public X509Certificate[] getAcceptedIssuers() {
return null;
}
@Override
public void checkServerTrusted(X509Certificate[] chain
String authType) throws CertificateException {
}
@Override
public void checkClientTrusted(X509Certificate[] chain
String authType) throws CertificateException {
}
};
SSLContext sslcontext = SSLContext.getInstance(“SSL“);
sslcontext.init(null new TrustManager[]{x509m}
new java.security.SecureRandom());
ftpsClient = new FTPSClient(false sslcontext);
try {
ftpsClient.setConnectTimeout(dataTimeout);
ftpsClient.connect(host port);
ftpsClient.setSoTimeout(timeout);
// Set protection buffer size
int reply = ftpsClient.getReplyCode();
if (FTPReply.isPositiveCompletion(reply)) {
// Login
if (ftpsClient.login(userName password)) {
//此设置关键之关键,耗费了1天时间,大坑
ftpsClient.execPBSZ(0);
ftpsClient.execPROT(“P“);
ftpsClient.enterLocalPassiveMode();
ftpsClient.setFileType(FTPClien
相关资源
- AndroidStudio版直连sqlserver
- android带百分比进度条的文件上传,使
- 美食天下项目Android版源码和Web版源码
- Android之自定义ToggleButton使用
- Android非常漂亮的登录界面
- pc与android通过usb socket实现手机通信
- android毕业设计
- 百度地图自定义Markerandroid
- Android分区工具包
- android-support-v4.jar已打包进去源代码
- u-blox_Android_GNSS_Driver_v3.10驱动源码+中
- 个人根据Android移动开发案例详解手写
- android 视频播放器 项目和原码
- Android【动画】【特效】 17种动画特效
- 基于Android智能家居详细设计(经典)
- android通过JDBC连接Mysql数据库
- Android通讯录的源代码
- android 瀑布流Demo
- 指纹传感器FPC1080在android下的驱动
- delphi xe5 android 调用照相机摄像头拍照
- Android手机连连看游戏源码
- android-sdk-windows v2.3离线完整版
- android 底部弹出菜单(带透明背景)
- Android工程模式简介.rar
- java远程进行telnetftpssh连接的方法及源
- Android蓝牙和Cors网络开发源码
- Android powermanger wakelock
- Android v7的一些jar包
- 最新android supportV7包
- android图片压缩工具类分享
评论
共有 条评论