相关下载:
commons-net down:http://commons.apache.org/net/download.html
公司提出需要通过ftp上传下载文件,总结一下(备忘)
package cn.xt.net.ftp;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.SocketException;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPFile;
import org.apache.commons.net.ftp.FTPReply;
import org.junit.Test;
public class Ftpclient {
final static String PATH="d:/zhanghuadong/";
final static String SERVICE_ADDRESS="192.168.0.115";
final static String USER="ftpuser";
final static String PASSWORD="ftpuser";
final static String DOWN_FILE_NAME="XF200070750845720090218";
/**
* Ftp下载
*
*/
@Test
public void ftpQuery(){
FTPClient client=new FTPClient();
try {
client.connect(SERVICE_ADDRESS);
boolean islogon=client.login(USER, PASSWORD);
FTPFile[] files=null;
if(islogon){
int reply=client.getReplyCode();
/**判断返回代码 */
if(!FTPReply.isPositiveCompletion(reply)){
throw new Exception("对不起,"+SERVICE_ADDRESS+" user:"+USER+" password:"+PASSWORD+" 连接出错!");
}
/**更改下载的目录 */
client.changeWorkingDirectory("qyyd_fsend/");
files=client.listFiles();
File file=null;
for (int i = 0; i < files.length; i++) {
System.out.println(files[i].getName());
if(files[i].getName().equals("XF200070750845720090218")){
System.out.println("down...");
file=new File(PATH+files[i].getName());
}
}
if(file!=null){
OutputStream out=new FileOutputStream(file);
client.retrieveFile("XF200070750845720090218", out);
System.out.println("down success...");
out.close();
}
System.out.println("logon 成功!");
}
client.logout();
client.disconnect();
} catch (SocketException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch(Exception e){
e.printStackTrace();
}
}
public void ftpUpload(){
FTPClient ftp=new FTPClient();
InputStream stream=null;
try{
//ftp.setDefaultPort(221);
ftp.connect(SERVICE_ADDRESS);
boolean islogon=ftp.login(USER, PASSWORD);
if(islogon){
int recode=ftp.getReplyCode();
if(!FTPReply.isPositiveCompletion(recode)){
throw new Exception("对不起,"+SERVICE_ADDRESS+" user:"+USER+" password:"+PASSWORD+" 连接出错!");
}
stream=new FileInputStream(new File(PATH+DOWN_FILE_NAME));
FTPFile[] files=ftp.listFiles();
int overname=0;
for (int i = 0; i < files.length; i++) {
if(files[i].getName().indexOf(DOWN_FILE_NAME)!=-1){
overname++;
}
}
if(overname>0){
ftp.rename(DOWN_FILE_NAME, DOWN_FILE_NAME+"."+overname);
}
//设置文件类型 文本类型 二进制文件 区别文本会根据系统加换行符 二进制则不会
ftp.setFileType(FTPClient.ASCII_FILE_TYPE);
boolean isstore=ftp.storeFile(DOWN_FILE_NAME,stream);
stream.close();
if(!isstore){
System.out.println("upload fail ...");
}
System.out.println("upload success...");
}
}catch(Exception e){
e.printStackTrace();
}finally{
try {
ftp.logout();
ftp.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public static void main(String[] args){
Ftpclient client=new Ftpclient();
client.ftpUpload();
}
}
分享到:
相关推荐
NULL 博文链接:https://yangyangmyself.iteye.com/blog/1299997
apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-...
开发工具 apache-tomcat-8.0.41-windows-x86开发工具 apache-tomcat-8.0.41-windows-x86开发工具 apache-tomcat-8.0.41-windows-x86开发工具 apache-tomcat-8.0.41-windows-x86开发工具 apache-tomcat-8.0.41-...
用于压缩/解压缩的java开发工具包,基本上主流格式全包含,其中apache-common-compress内有5个jar包,两个是test的不用管,剩余三个,一个是源码包,一个是开发包另一个是javadoc。解压除RAR外的所有格式。 apache-...
apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-...
apache-hive-2.1.1-bin.tar apache-hive-2.1.1-bin.tar apache-hive-2.1.1-bin.tarapache-hive-2.1.1-bin.tar apache-hive-2.1.1-bin.tar apache-hive-2.1.1-bin.tarapache-hive-2.1.1-bin.tar apache-hive-2.1.1-...
apache-tomcat-10.0.8.exe、 apache-tomcat-10.0.8.tar.gz、 apache-tomcat-10.0.8.zip、 apache-tomcat-10.0.8-windows-x64.zip、 apache-tomcat-10.0.8-windows-x86.zip、 apache-tomcat-10.0.8-deployer.tar.gz、...
apache-tomcat-9.0.45-windows-x64apache-tomcat-9.0.45-windows-x64apache-tomcat-9.0.45-windows-x64apache-tomcat-9.0.45-windows-x64apache-tomcat-9.0.45-windows-x64apache-tomcat-9.0.45-windows-x64apache-...
apache commons-net-3.5 实现 FTP 上传文件的神器,拿走不谢! 主要涉及上传文件的jar,希望能帮到你。
Maven坐标:org.apache.flink:flink-table-common:1.12.7; 标签:apache、flink、table、common、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 ...
apache-maven-3.8.8.zip压缩包内容: apache-maven-3.8.8-bin.tar.gz apache-maven-3.8.8-bin.zip apache-maven-3.8.8-src.tar.gz apache-maven-3.8.8-src.zip
apache-jakarta旗下的所有开源项目jar文件 apache-jakarta-commons-codec.jar apache-jakarta-commons-collections.jar apache-jakarta-commons-discovery.jar apache-jakarta-commons-email.jar apache-jakarta-...
apache-tomcat-7.0.53apache-tomcat-7.0.53apache-tomcat-7.0.53apache-tomcat-7.0.53
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
2018-04-18 01:19 5,623,087 apache-tomcat-9.0.7-fulldocs.tar.gz 2018-04-18 01:19 11,168,080 apache-tomcat-9.0.7-windows-x64.zip 2018-04-18 01:19 10,830,323 apache-tomcat-9.0.7-windows-x86.zip 2018-04-...
Maven坐标:org.apache.parquet:parquet-common:1.10.0; 标签:apache、common、parquet、jar包、java、API文档、中文版; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 ...
Weblogic跟Apache整合,Apache2.*版代理weblogic12.2.1.4的插件so
apache-jmeter-5.6.3.zip apache-jmeter-5.6.3.tgz apache-jmeter-5.6.3_src.zip apache-jmeter-5.6.3_src.tgz
apache-ant-1.9.16-bin.zip
apache-tomcat-6.0.53-src,apache tomcat 6.0.53的源码。 压缩包文件清单: apache-tomcat-6.0.53-src.tar.gz apache-tomcat-6.0.53-src.tar.gz.asc apache-tomcat-6.0.53-src.tar.gz.md5 apache-tomcat-6.0.53-...