java jdk1.6环境下实现 ftp文件上传

java jdk1.6环境下实现 ftp文件上传,第1张

通过JDK自带的API实现

package comcloudpowerutil;

import javaioFile;
import javaioFileInputStream;
import javaioFileOutputStream;
import javaioIOException;

import sunnetTelnetInputStream;
import sunnetTelnetOutputStream;
import sunnetftpFtpClient;

/
Java自带的API对FTP的 *** 作
@Title:Ftpjava
@author: 周玲斌
/
public class Ftp {
/
本地文件
/
private String localfilename;
/
远程文件名
/
private String remotefilename;
/
FTP客户端
/
private FtpClient ftpClient;

/
服务器连接
@param ip 服务器IP
@param port 服务器端口
@param user 用户名
@param password 密码
@param path 服务器路径
@author 周玲斌
@date 2012-7-11
/
public void connectServer(String ip, int port, String user,
String password, String path) {
try {
/ 连接服务器的两种方法/
//第一种方法
// ftpClient = new FtpClient();
// ftpClientopenServer(ip, port);
//第二种方法
ftpClient = new FtpClient(ip);

ftpClientlogin(user, password);
// 设置成2进制传输
ftpClientbinary();
Systemoutprintln("login success!");
if (pathlength() != 0){
//把远程系统上的目录切换到参数path所指定的目录
ftpClientcd(path);
}
ftpClientbinary();
} catch (IOException ex) {
exprintStackTrace();
throw new RuntimeException(ex);
}
}
/
关闭连接
@author 周玲斌
@date 2012-7-11
/
public void closeConnect() {
try {
ftpClientcloseServer();
Systemoutprintln("disconnect success");
} catch (IOException ex) {
Systemoutprintln("not disconnect");
exprintStackTrace();
throw new RuntimeException(ex);
}
}
/
上传文件
@param localFile 本地文件
@param remoteFile 远程文件
@author 周玲斌
@date 2012-7-11
/
public void upload(String localFile, String remoteFile) {
thislocalfilename = localFile;
thisremotefilename = remoteFile;
TelnetOutputStream os = null;
FileInputStream is = null;
try {
//将远程文件加入输出流中
os = ftpClientput(thisremotefilename);
//获取本地文件的输入流
File file_in = new File(thislocalfilename);
is = new FileInputStream(file_in);
//创建一个缓冲区
byte[] bytes = new byte[1024];
int c;
while ((c = isread(bytes)) != -1) {
oswrite(bytes, 0, c);
}
Systemoutprintln("upload success");
} catch (IOException ex) {
Systemoutprintln("not upload");
exprintStackTrace();
throw new RuntimeException(ex);
} finally{
try {
if(is != null){
isclose();
}
} catch (IOException e) {
eprintStackTrace();
} finally {
try {
if(os != null){
osclose();
}
} catch (IOException e) {
eprintStackTrace();
}
}
}
}

/
下载文件
@param remoteFile 远程文件路径(服务器端)
@param localFile 本地文件路径(客户端)
@author 周玲斌
@date 2012-7-11
/
public void download(String remoteFile, String localFile) {
TelnetInputStream is = null;
FileOutputStream os = null;
try {
//获取远程机器上的文件filename,借助TelnetInputStream把该文件传送到本地。
is = ftpClientget(remoteFile);
File file_in = new File(localFile);
os = new FileOutputStream(file_in);
byte[] bytes = new byte[1024];
int c;
while ((c = isread(bytes)) != -1) {
oswrite(bytes, 0, c);
}
Systemoutprintln("download success");
} catch (IOException ex) {
Systemoutprintln("not download");
exprintStackTrace();
throw new RuntimeException(ex);
} finally{
try {
if(is != null){
isclose();
}
} catch (IOException e) {
eprintStackTrace();
} finally {
try {
if(os != null){
osclose();
}
} catch (IOException e) {
eprintStackTrace();
}
}
}
}

public static void main(String agrs[]) {

String filepath[] = { "/temp/aatxt", "/temp/registlog"};
String localfilepath[] = { "C:\\tmp\\1txt","C:\\tmp\\2log"};

Ftp fu = new Ftp();
/
使用默认的端口号、用户名、密码以及根目录连接FTP服务器
/
fuconnectServer("127001", 22, "anonymous", "IEUser@", "/temp");

//下载
for (int i = 0; i < filepathlength; i++) {
fudownload(filepath[i], localfilepath[i]);
}

String localfile = "E:\\号码txt";
String remotefile = "/temp/哈哈txt";
//上传
fuupload(localfile, remotefile);
fucloseConnect();
}
}

一、配置服务器环境
1、安装JDK
2、有数据库安装数据库
3、安装tomcat
4、修改目录tomcat/conf/serverxml 修改8080端口为80,配置Host标签 host配置帮你的域名绑定网站对应的目录


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/12856819.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-28
下一篇 2023-05-28

发表评论

登录后才能评论

评论列表(0条)

保存