怎么用java代码创建ftp用户和密码

怎么用java代码创建ftp用户和密码,第1张

创建ftp用户名和密码,其实就在ftp服务器的用户文件里面添加条记录。

方法有两种,我说下思路。

一、你可以用java程序找到相应的配置文件,打开、把用户名密码写入进去。ok了。

二、你用用java程序调用创建ftp用户的命令,来创建ftp用户。

使用File类中方法就可以实现

File[] listFiles() 返回目录下所有的文件

File file=new File("你的ftp的根路径");

File files[]=filelistFiles();

for(int i=0;i<fileslength;i++){

Systemoutprintln(files[i]getName() );

}

如果要获取所有的文件和文件夹可以使用String[] list()方法。返回的是String类型的数组,其中所有文件和文件夹的相对路径表示。

补充---

如果那样的话那么就需要在你的ftp服务器上做一个socket服务端,你通过一个客户端连接上去。然后服务器端将获取的文件列表数组传递给你,就可以了。如果想直接获取别人的机器的文件列表是很难的,基本上是不可能的,当然是出于安全的考虑

import javaioFile;

import javaioFileInputStream;

import javaioIOException;

import javaioOutputStream;

import javaioUnsupportedEncodingException;

import sunnetftpFtpClient;

/

@author chenc

@version 10

2008-02-19

/

public class Ftp {

private String ip = "";

private String username = "";

private String password = "";

private String ftpDir = "";

private String localFileFullName = "";// 待上传的文件全名

private String ftpFileName = ""; // 文件上传到FTP后的名称

FtpClient ftpClient = null;

OutputStream os = null;

FileInputStream is = null;

public Ftp(String serverIP, String username, String password, String ftpDir) {

thisip = serverIP;

thisusername = username;

thispassword = password;

if (ftpDir == null) {

thisftpDir = "/ftpfileload";

} else {

try {

thisftpDir = "/"

+ new String(ftpDirgetBytes("ISO-8859-1"), "GBK")

toString();

} catch (UnsupportedEncodingException e) {

// TODO 自动生成 catch 块

eprintStackTrace();

}

}

}

private void createDir(String dir, FtpClient ftpClient) {

Systemoutprintln(thisftpDir);

ftpClientsendServer("MKD " + dir + "\r\n");

try {

ftpClientreadServerResponse();

} catch (IOException e) {

// TODO 自动生成 catch 块

eprintStackTrace();

}

}

private Boolean isDirExist(String dir, FtpClient ftpClient) {

try {

ftpClientcd(dir);

} catch (Exception e) {

// TODO 自动生成 catch 块

return false;

}

return true;

}

public String upload(String localFileFullName) {

// thisftpFileName = "aaatest";

// 获取文件后缀名

String ext = localFileFullNamesubstring(localFileFullName

lastIndexOf(""));

// Systemoutprintln(ext);

// 产生新文件名,用系统当前时间+文件原有后缀名

long newFileName = SystemcurrentTimeMillis();

String newFileFullName = newFileName + ext;

// Systemoutprintln("new file name:"+newFileFullName);

thisftpFileName = newFileFullName;

try {

String savefilename = new String(localFileFullName

getBytes("ISO-8859-1"), "GBK");

// 新建一个FTP客户端连接

ftpClient = new FtpClient();

ftpClientopenServer(thisip);

ftpClientlogin(thisusername, thispassword);

// 判断并创建目录

if (!isDirExist(thisftpDir, ftpClient)) {

createDir(thisftpDir, ftpClient);

}

ftpClientcd(thisftpDir);// 切换到FTP目录

ftpClientbinary();

os = ftpClientput(thisftpFileName);

// 打开本地待长传的文件

File file_in = new File(savefilename);

is = new FileInputStream(file_in);

byte[] bytes = new byte[1024];

// 开始复制

int c;

// 暂未考虑中途终止的情况

while ((c = isread(bytes)) != -1) {

oswrite(bytes, 0, c);

}

} catch (Exception e) {

eprintStackTrace();

Systemerrprintln("Exception e in Ftp upload(): " + etoString());

} finally {

try {

if (is != null) {

isclose();

}

if (os != null) {

osclose();

}

if (ftpClient != null) {

ftpClientcloseServer();

}

} catch (Exception e) {

Systemerrprintln("Exception e in Ftp upload() finally"

+ etoString());

}

}

return thisftpFileName;

}

public void delFile(String dir, String filename) {

ftpClient = new FtpClient();

try {

ftpClientopenServer(thisip);

ftpClientlogin(thisusername, thispassword);

if (dirlength() > 0) {

ftpClientcd(dir);

}

ftpClientsendServer("DELE " + filename + "\r\n");

ftpClientreadServerResponse();

} catch (IOException e) {

// TODO 自动生成 catch 块

eprintStackTrace();

}

}

}

我写的一个FTP类,你看看你能不能用。。。。。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 怎么用java代码创建ftp用户和密码

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情