需要导入edtftpj包,这是下载地址
import
java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import com.enterprisedt.net.ftp.FTPClient;
import com.enterprisedt.net.ftp.FTPConnectMode;
import com.enterprisedt.net.ftp.FTPException;
import com.enterprisedt.net.ftp.FTPMessageCollector;
import com.enterprisedt.net.ftp.FTPTransferType;
public class TestFtp {
static String FTPSERVER = " ftp3.nofeehost.com " ;
/** ftp server 端口,ftp默认的端口都是21 */
static int FTPPORT = 21 ;
/** ftp 用户名 */
static String FTPUSER = " test " ;
/** ftp 用户密码 */
static String FTPPSWD = " test " ;
/** 文件存放的路径 */
static String filePath = " D:/testftp/ " ;
/** 文件名 */
static String fileName = " Blue hills.jpg " ;
public static void main(String[] args) {
try {
System.out.println( " connnect... " );
FTPClient ftp = login();
SimpleDateFormat formatter = new SimpleDateFormat( " yyyy-MM-dd " );
Calendar calendar = Calendar.getInstance();
formatter = new SimpleDateFormat( " yyyy-MM-dd " );
String time = formatter.format(calendar.getTime());
try {
ftp.mkdir(time);
} catch (Exception e) {}
ftp.chdir(time);
try {
ftp.mkdir( " images " );
} catch (Exception e) {}
ftp.chdir( " images " );
System.out.println( " make dir success " );
File file = new File(filePath);
String [] fileList = file.list();
for ( int i = 0 ; i < fileList.length; i ++ ) {
try {
} catch (Exception e) {}
System.out.println( " file : " + (i + 1 ));
/** put(源,目的)这里的路径可以用相对路径或绝对路径 */
ftp.put(filePath + fileList[i], fileList[i]);
}
ftp.quit();
ftp = login();
ftp.chdir(time);
ftp.put(filePath + fileName,fileName);
ftp.quit();
} catch (NumberFormatException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (FTPException e) {
e.printStackTrace();
}
}
private static FTPClient login() throws IOException, FTPException{
FTPClient ftp = new FTPClient();
ftp.setRemoteHost(FTPSERVER);
ftp.setRemotePort(FTPPORT);
ftp.setControlEncoding( " GBK " );
FTPMessageCollector listener = new FTPMessageCollector();
ftp.setMessageListener(listener);
ftp.connect();
ftp.login(FTPUSER, FTPPSWD);
/** 设置连接模式 */
ftp.setConnectMode(FTPConnectMode.ACTIVE);
/** 设置传送模式 为二进制模式 */
ftp.setType(FTPTransferType.BINARY);
System.out.println( " connnect success " );
return ftp;
}
}
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import com.enterprisedt.net.ftp.FTPClient;
import com.enterprisedt.net.ftp.FTPConnectMode;
import com.enterprisedt.net.ftp.FTPException;
import com.enterprisedt.net.ftp.FTPMessageCollector;
import com.enterprisedt.net.ftp.FTPTransferType;
public class TestFtp {
static String FTPSERVER = " ftp3.nofeehost.com " ;
/** ftp server 端口,ftp默认的端口都是21 */
static int FTPPORT = 21 ;
/** ftp 用户名 */
static String FTPUSER = " test " ;
/** ftp 用户密码 */
static String FTPPSWD = " test " ;
/** 文件存放的路径 */
static String filePath = " D:/testftp/ " ;
/** 文件名 */
static String fileName = " Blue hills.jpg " ;
public static void main(String[] args) {
try {
System.out.println( " connnect... " );
FTPClient ftp = login();
SimpleDateFormat formatter = new SimpleDateFormat( " yyyy-MM-dd " );
Calendar calendar = Calendar.getInstance();
formatter = new SimpleDateFormat( " yyyy-MM-dd " );
String time = formatter.format(calendar.getTime());
try {
ftp.mkdir(time);
} catch (Exception e) {}
ftp.chdir(time);
try {
ftp.mkdir( " images " );
} catch (Exception e) {}
ftp.chdir( " images " );
System.out.println( " make dir success " );
File file = new File(filePath);
String [] fileList = file.list();
for ( int i = 0 ; i < fileList.length; i ++ ) {
try {
} catch (Exception e) {}
System.out.println( " file : " + (i + 1 ));
/** put(源,目的)这里的路径可以用相对路径或绝对路径 */
ftp.put(filePath + fileList[i], fileList[i]);
}
ftp.quit();
ftp = login();
ftp.chdir(time);
ftp.put(filePath + fileName,fileName);
ftp.quit();
} catch (NumberFormatException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (FTPException e) {
e.printStackTrace();
}
}
private static FTPClient login() throws IOException, FTPException{
FTPClient ftp = new FTPClient();
ftp.setRemoteHost(FTPSERVER);
ftp.setRemotePort(FTPPORT);
ftp.setControlEncoding( " GBK " );
FTPMessageCollector listener = new FTPMessageCollector();
ftp.setMessageListener(listener);
ftp.connect();
ftp.login(FTPUSER, FTPPSWD);
/** 设置连接模式 */
ftp.setConnectMode(FTPConnectMode.ACTIVE);
/** 设置传送模式 为二进制模式 */
ftp.setType(FTPTransferType.BINARY);
System.out.println( " connnect success " );
return ftp;
}
}