ftp上传源码

 

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;

import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPFile;
import org.apache.log4j.Logger;

 


public class FtpService extends BaseServiceSupport {
 
  public static FTPClient ftpClient;
 
  /**  连接服务器
   * 
   *  */
  private void connect() {
 
    try {
      String server = Configuration.getInstance().getFtpServerIp();
      String username = Configuration.getInstance().getFtpServerUsername();
      String password = Configuration.getInstance().getFtpServerPassword();
      ftpClient = new FTPClient();
      ftpClient.connect(server);
      ftpClient.login(username, password);
    }
    catch (IOException e) {
      e.printStackTrace();
    }
  }

  /**
   * 关闭连接
   */
  public void closeConnect() {
    try {
      ftpClient.disconnect();
    }
    catch (IOException e) {
      e.printStackTrace();
    }
  }


  /**
   * 上传
   *
   */
  public void upload(InputStream is,String filename) {
    try {
        String destFileName = filename;
        String tempFileName = "tmp_" + filename;
        boolean flag = ftpClient.storeFile(tempFileName, is);
        if (flag) {
          ftpClient.rename(tempFileName, destFileName);
        }
        is.close();
      }
    catch (IOException e) {
     e.printStackTrace();
    }
  }

  /**
   * 从服务器下载文件到本地
   */
  public void download(String filepath,String filename) {
    try {
      FTPFile[] fileList = ftpClient.listFiles();
      for (int i = 0; i < fileList.length; i++){
     if(fileList[i].getName().equals(filename))continue;
        String name = fileList[i].getName();
        File tempFile = new File(filepath + filename);
        File destFile = new File(filepath + filename);
        FileOutputStream fos = new FileOutputStream(tempFile);
        boolean flag = ftpClient.retrieveFile(name, fos);
        // 关闭文件流
        fos.close();
        if (flag) {
         tempFile.renameTo(destFile);
        }
      }
    }
    catch (IOException e){
     e.printStackTrace();
    }
  }

  /** 
   * 测试函数
   * @throws FileNotFoundException 
   */
  public static void main(String[] args) throws FileNotFoundException{
    FtpService fd = new FtpService();
    fd.connect();
    File file = new File("d:/logfile.log");
    InputStream in  = new FileInputStream(file);
    fd.upload(in,"logfile.log");
    fd.closeConnect();
  }
}

 

PHP实现FTP文件上传下载(附完整源码) 阅读详情

相关推荐

C#实现的FTP自动上传工具源码解析

C#是一种类型安全的语言,它在程序运行之前就完成了大部分的类型检查工作。类型安全意味着可以减少运行时错误,并且更容易理解代码的意图。C#语言支持多种编程范式,包括面向对象、命令式、声明式、泛型和函数式编程。FTP(File Transfer Protocol)是文件传输协议,它是一种用于在网络上进行文件传输的标准协议。FTP协议提供了一种可靠的方式来在客户端和服务器之间传输文件,不管它们是在局域网还是广域网。FTP的工作原理基于客户端-服务器模型。

weixin_42591413的博客 1073

通过 Python 【FTP】实现文件上传与下载(含源码)

Python 通过FTP实现文件上传与下载【含代码】。

weixin_53575943的博客 2540

FTP上传下载源码

DELPHI实现登录访问FTP,上传,下载文件。

ftp实现文件上传、下载、删除(附源码)(三)

场景:因工作原因需要在ftp服务器上实现文件上传、下载、删除文件,因此踩坑无数,总结的代码如下: 1.添加依赖 <dependency> <groupId>commons-net</groupId> <artifactId>commons-net</artifactId> <version>3.3</version> </dependency> 2.创建工具类, package com.co

【莉婶】的博客 1376

FTP 上传工具源码

FTP 上传工具源码

ftp上传文件源码

ftp上传文件c源码,带用户名密码,有些基本函数可自己实现

文件上传ftp

logger.error("[数据提取]-----远程连接服务器账户密码错误:账号-{},密码-{}", uploadDto.getUser(),uploadDto.getPassword());logger.info("上传文件【{}】成功", uploadDto.getLocalFilePathName());logger.error("上传文件失败,参数:{}", uploadDto, e);* localFilePathName 上传的文件文件名(包括路径)* proxyPort 代理的端口。

zxjdC的博客 757

Pyradiomics 医学影像提取放射组学特征(下)

Pyradiomics 医学影像提取放射组学特征(下)

Edward的博客 1309

FTP文件上传Java代码实操

FTP文件上传Java代码

weixin_43749064的博客 1479

从零开始STM32cubeide学习

使用的是正点原子的精英版,单片机是STM32F103ZET6,详细讲解完成跑马灯实验

weixin_44077208的博客 2279

NVIDIA NCCL 源码解析:从XML拓扑到高性能通信图的构建

本文深入解析了NVIDIA NCCL如何将XML硬件拓扑文件转化为高性能通信图的核心过程。详细阐述了从创建CPU、GPU、NIC等节点,到建立PCIe、NVLink连接,再到计算链路带宽并进行关键排序的完整建图流程。该图是NCCL实现最优通信路径规划、充分发挥NVLink等高速互联性能的基石,直接影响分布式深度学习训练的效率。

convnet3designer的博客 306

php ftp上传文件 源码,PHP FTP上传文件

第一步:建立一个新的 FTP 连接。ftp_connect(host,port,timeout);host必需,规定要连接的 FTP 服务器,可以是域名或 IP 地址,后面不应以斜线结尾,前面也不需要用 ftp:// 开头。port可选,规定 FTP 服务器的端口。timeout可选,规定该 FTP 服务器的超时时间,默认是 90 秒。返回值:若成功,则返回一个连接标识,否则返回 false。第二...

weixin_35410099的博客 259

9 海康视觉平台VisionMaster 上手系列:典型案例之螺丝机案例

海康视觉平台VisionMaster 上手系列:典型案例之螺丝机案例 快速入门 工业机器视觉 机器视觉

HuangGong2022的博客 7166

java ftp上传源码_java FTP上传发布文件源码示例

package ftp;import com.enterprisedt.net.ftp.FTPClient;import com.enterprisedt.net.ftp.FTPConnectMode;import com.enterprisedt.net.ftp.FTPMessageCollector;import com.enterprisedt.net.ftp.FTPTransferType...

weixin_39592789的博客 256

SAP MTS计划策略40实战:如何配置‘带最终组装的计划‘提升定制化生产效率

本文深入解析SAP计划策略40(带最终组装的计划)的核心机制与实战配置。该策略通过“需求消耗”与“组装灵活性”,有效融合按库存生产(MTS)与按订单生产(MTO)的优势,帮助制造企业在保持通用组件库存稳定的同时,快速响应客户的定制化需求,从而提升生产效率与客户满意度。

ruby5的博客 966

数仓建模:维度表合并时,如何处理可能出现的数据冲突?

通过以上方法,可以有效地处理维度表合并时可能出现的数据冲突,确保合并后的数据完整性、一致性和准确性,满足业务需求和数据仓库的性能要求。在合并过程中,需要根据实际情况选择合适的处理方法,并进行充分的测试和验证。(2)实战中总结的SQL技巧,帮助SQLBOY在SQL语言上有质的飞越,无论你应对业务难题及面试都会游刃有余【如果您觉得本文还不错,对你有帮助,那么不妨可以关注一下我的数字化建设实践之路专栏,这里的内容会更精彩。技巧总结,让你认识不一样的数仓。,数据库会抛出异常,可根据异常处理机制解决。

石榴姐yyds 1132

FTP实现上传下载文件源码

package com.dt.xlb; import java.io.*; import org.apache.commons.net.ftp.FTP; import org.apache.commons.net.ftp.FTPClient; import org.apache.commons.net.ftp.FTPFile; import org.apache.commons.net.ft...

南来北往的客 3578

SOC、SOH、OCV

1)放电实验法的测量SOH结果最为准确,但是深度放电会对影响电池的寿命;2)电阻折算法仅将电阻作为评价SOH的依据,但电池老化时电阻的变化范围较小,因此该方法的误差较大;3)电阻折算法需要对电池进行大量的实验,绘制成Map图,但是该方法有一定的局限性,针对不同的电池需要绘制不同的Map图;4)阻抗分析法是目前最为前沿的方法,可以根据阻抗谱较为直观的分析SOH的变化,但是该方法需要的成本较高,每台设备约为5万美元。

m0_61973119的博客 2万+

QT之FTP上传下载等功能工具源码介绍:轻松实现FTP服务器文件传输

QT之FTP上传下载等功能工具源码介绍:轻松实现FTP服务器文件传输 去发现同类优质开源项目:https://gitcode.com/ QT之FTP上传下载等功能工具源码是一套专门为QT框架设计的FTP功能工具源码,它帮助开发者和用户高效地实现FTP服务器的文件上传与下载。以下是关于这个项目的详细介绍。 项目介绍 QT之FTP上传下载等功能工具源码,旨在简化FTP文件传输操作。通过使用QT框架,它...

gitblog_06745的博客 808

一文学会Inner-MPDIoU:YOLOv11边界框回归优化全解析

Inner-MPDIoU 凭借“辅助边框+最小点距离”的双重创新,成功解决了传统 IoU 损失在小目标、遮挡场景、位置偏差场景下的收敛和判别难题,为 YOLOv11 注入了更强的边框回归能力。从原理剖析到代码集成,本教程已为你铺就了一条“定位精度跃升”的实战路径。现在,不妨亲自上手尝试,让你的目标检测模型在各类数据集上都能交出一份“定位精准”的答卷——相信我,当你看到检测框完美贴合目标的那一刻,你会明白这份尝试的价值。我很乐意在你实践过程中帮你解决任何问题,让我们一起推动目标检测在边框回归领域的边界。

know_F0727的博客 140

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

c++实现FTP上传文件(附带源码)

c++实现FTP上传文件(附带源码)

欢迎来到我的博客!这里是一个专注于计算机技术的分享平台,涵盖编程开发、算法研究、系统架构、软件工程等多个领域。无论你是初学者还是资深开发者,都能在这里找到有价值的内容。 759

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

PowerBuilder9.0实现FTP上传与下载源码分享

PowerBuilder9.0实现FTP上传与下载源码分享 去发现同类优质开源项目:https://gitcode.com/ 介绍 在当前的信息化时代,公司间的资源共享与数据交互显得尤为重要。然而,由于安全限制,部分服务器的资源共享存在困难。针对这一问题,我们公司采用了PowerBuilder9.0语言来实现FTP上传与下载功能,以实现与这些服务器的安全交互。 FTP(文件传输协议)是一种网络协议...

gitblog_06775的博客 533

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

java:实现ftp上传与下载(附带源码)

java:实现ftp上传与下载(附带源码)

欢迎来到我的博客!这里是一个专注于计算机技术的分享平台,涵盖编程开发、算法研究、系统架构、软件工程等多个领域。无论你是初学者还是资深开发者,都能在这里找到有价值的内容。 1021

C++:实现FTP文件上传(附带源码)

C++:实现FTP文件上传(附带源码)

欢迎来到我的博客!这里是一个专注于计算机技术的分享平台,涵盖编程开发、算法研究、系统架构、软件工程等多个领域。无论你是初学者还是资深开发者,都能在这里找到有价值的内容。 1529
上一篇: cookies保存的url
下一篇: Spring事务配置java.lang.ClassCastException: $Proxy1解决
friping
博客等级 码龄20年 0粉丝 75原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值