package com.ideal.portal.base.util.ftpUtil; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.util.Date; import org.apache.commons.io.IOUtils; import org.apache.commons.lang.RandomStringUtils; import org.apache.commons.net.ftp.FTPClient; import com.ideal.portal.base.util.DateUtil; /** * @author * 2013-7-1 */ public class FtpUploadFile { /** * FTP上传单个文件测试 * @param Ip ftp地址 * @param port ftp 端口 * @param loginName ftp 登录用户名 * @param pwd ftp 登录密码 * @param path 上传文件路径 * @param toPath 上传ftp指定路径 */ public static String ftpUpload(String Ip,int port,String loginName,String pwd,String path,String toPath) { FTPClient ftpClient = new FTPClient(); FileInputStream fis = null; String newfileName = null;//转换后的文件名称 String datestr = DateUtil.date2String(new Date(), "yyyyMMddHHmmss")+RandomStringUtils.randomNumeric(4); try { ftpClient.connect(Ip,port); ftpClient.login(loginName, pwd); File srcFile = new File(path); fis = new FileInputStream(srcFile); //获取后缀名 String fileName = srcFile.getName(); String prefix=fileName.substring(fileName.lastIndexOf(".")+1); newfileName = datestr+"."+prefix; //设置上传目录 ftpClient.changeWorkingDirectory(toPath.trim().equals("") ? "/" : toPath); ftpClient.setBufferSize(1024); ftpClient.setControlEncoding("GBK"); //设置文件类型(二进制) ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE); ftpClient.storeFile(newfileName, fis); ftpClient.logout(); } catch (IOException e) { e.printStackTrace(); throw new RuntimeException("FTP客户端出错!", e); } finally { IOUtils.closeQuietly(fis); try { ftpClient.disconnect(); } catch (IOException e) { e.printStackTrace(); throw new RuntimeException("关闭FTP连接发生异常!", e); } } return newfileName; } public static void main(String[] args) { FtpUploadFile ftpUploadFile = new FtpUploadFile(); ftpUploadFile.ftpUpload("10.4.247.111",21,"lgc", "lgc", "D:\\log\\puzzles.text", "/uploadFile/"); /*String datestr = DateUtil.date2String(new Date(), "yyyyMMddHHmmss"); String str = RandomStringUtils.randomNumeric(4); System.out.println(datestr); System.out.println(str); */ } }
需导入:commons-net-1.4.1.jar(见附件)
相关推荐
"FTP上传控件"是专为实现文件上传功能而设计的,它简化了FTP客户端的实现过程,开发者无需深入了解FTP协议的细节,就能在应用中实现文件上传功能。"FTP上传控件"的关键特性包括支持超大文件上传和断点续传。 超大...
总的来说,使用Java实现FTP上传和下载涉及网络通信、文件操作和错误处理等多个方面的知识。通过"ftpLoadDown.jar"库,我们可以简化这个过程,使得开发者可以专注于业务逻辑,而无需关心底层的FTP协议细节。在实际...
Labview FTP上传文件是利用Labview(Laboratory Virtual Instrument Engineering Workbench)这一强大的图形化编程环境,通过FTP(File Transfer Protocol)协议实现文件的远程传输。FTP是一种标准网络协议,用于在...
**VB API FTP上传下载源代码详解** 在信息技术领域,FTP(File Transfer Protocol)是一种用于在网络上进行文件传输的标准协议。在VB(Visual Basic)环境中,我们可以使用API(Application Programming Interface...
在"Go实现FTP上传资源"这个主题中,我们需要关注以下几个关键知识点: 1. **FTP协议基础**:FTP协议由两部分组成,即控制连接和数据连接。控制连接用于发送命令和接收响应,数据连接则用于实际的文件传输。FTP支持...
BoschNetConn可能是你的项目或库的名字,它可能封装了这些libcurl的FTP上传操作,提供了一种更方便的方式来处理网络连接。如果你正在使用这个库,你应该查阅其文档以了解如何具体使用它的API来上传文件。 总之,C++...
在这个"FTP上传与下载程序PB"的案例中,我们将会探讨如何使用PowerBuilder来实现FTP功能,包括文件的上传和下载,以及可能涉及的自动升级机制。 首先,理解FTP的基本概念至关重要。FTP允许用户在两台计算机之间交换...
这个FTP上传实例提供了可视化的进度反馈,使得用户能够清晰地看到文件上传的进度,提高了用户体验。 FTP上传的核心原理是通过FTP客户端连接到FTP服务器,然后将本地文件分块发送到服务器。在这个过程中,通过跟踪已...
**FTP上传文件:** 要实现FTP文件上传,我们首先创建一个`FtpWebRequest`对象,设置其方法为`WebMethod.UploadFile`,然后提供FTP服务器的URL、用户名和密码。接着,打开一个流写入器,将本地文件内容写入请求的主体...
FTP上传和断点续传是网络传输中两个重要的概念,特别是在大文件传输场景下,而更新进度条则是提升用户体验的关键元素。在这个公司项目的第一个版本中,我们关注的是如何实现一个功能完善的FTP上传系统,该系统支持...
FTP上传实现网站预览的过程涉及多个步骤和技术,下面将详细解释这一过程。 1. FTP客户端与服务器: FTP服务需要一个服务器端和客户端。服务器端是存储网站文件的地方,而客户端是用户用来连接服务器并管理文件的...
FTP上传涉及到将本地文件发送到远程FTP服务器。使用libcurl,我们可以通过以下步骤实现: 1. **初始化libcurl**:创建一个`CURL`指针,并调用`curl_global_init()`初始化全局设置。 2. **设置URL**:使用`curl_...
萤石云摄像头自动截图以及FTP上传是一个集成自动化与远程存储功能的系统,它结合了现代监控设备的技术优势,为用户提供了一种高效、便捷的方式来管理和获取摄像头捕获的图像。在这个系统中,萤石云摄像头扮演着核心...
Delphi FTP上传程序是使用Delphi7开发的一个应用程序,它实现了通过FTP(文件传输协议)将本地文件上传到远程服务器的功能。FTP是一种广泛用于互联网上的标准协议,允许用户在计算机之间传输文件。在这个项目中,...
FTP上传程序就是实现这一功能的应用,允许用户将本地计算机上的文件或目录上传到远程FTP服务器上。这种程序通常具有用户友好的界面,简化了文件传输过程。 在"FTP上传程序(典型的ftp上传应用)"中,重点在于程序...
标题“FTP上传与下载pb9.0code”指的是使用PowerBuilder 9.0(简称PB9)开发的一个程序,该程序实现了FTP(File Transfer Protocol)的上传和下载功能。PowerBuilder是一款强大的可视化编程工具,特别适合于构建...
FTP(File Transfer Protocol)是一种基于TCP/IP协议的...综上所述,FTP上传涉及到网络通信、身份验证、文件操作等多个方面,理解并熟练运用FTP上传能有效提高工作效率,特别是在需要跨网络共享和管理文件的环境中。
在这个场景中,我们关注的是一个基于Java开发的FTP上传工具,它能够帮助用户将本地文件上传到FTP服务器。以下是一些关于FTP上传工具和相关技术的知识点: 1. **FTP基本概念**: FTP是一个应用层协议,基于TCP/IP...
很好用的ftp上传工具,上传速度也很快,很好用的ftp上传工具,上传速度也很快,很好用的ftp上传工具,上传速度也很快,
在VC++中实现FTP上传和下载功能,开发者通常会利用WinInet库或第三方FTP库。 首先,让我们深入了解一下FTP上传。FTP上传是指将本地计算机上的文件发送到FTP服务器的过程。在VC++中,可以使用WinInet API来实现这一...