真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

javaftp斷開代碼 java ftp斷點(diǎn)續(xù)傳

JAVA編寫FTP連接報(bào)錯(cuò)java.net.ConnectException: Connection refused: connect FTP

你用的FTPClient引入不對吧,我們項(xiàng)目上都是用的

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站制作、做網(wǎng)站、文登網(wǎng)絡(luò)推廣、成都小程序開發(fā)、文登網(wǎng)絡(luò)營銷、文登企業(yè)策劃、文登品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供文登建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com

import org.apache.commons.net.;

import org.apache.commons.net.;

import org.apache.commons.net.;

下面是我們項(xiàng)目上用到的FTP的實(shí)現(xiàn)代碼(FTP需要先連接,再登錄,之后就是校驗(yàn)登錄是否成功),具體代碼如下:

/**

*?獲取FTPClient對象

*

*?@param?ftpHost?FTP主機(jī)服務(wù)器

*?@param?ftpPassword?FTP?登錄密碼

*?@param?ftpUserName?FTP登錄用戶名

*?@param?ftpPort?FTP端口?默認(rèn)為21

*?@return?FTPClient

*?@throws?Exception

*/

public?static?FTPClient?getFTPClient(String?ftpHost,?String?ftpUserName,

String?ftpPassword,?int?ftpPort)?throws?Exception?{

try?{

FTPClient?ftpClient?=?new?FTPClient();

ftpClient.connect(ftpHost,?ftpPort);//?連接FTP服務(wù)器

ftpClient.login(ftpUserName,?ftpPassword);//?登陸FTP服務(wù)器

if?(!FTPReply.isPositiveCompletion(ftpClient.getReplyCode()))?{

logger.error("未連接到FTP,用戶名或密碼錯(cuò)誤!");

ftpClient.disconnect();

return?null;

}?else?{

logger.info("FTP連接成功!");

return?ftpClient;

}

}?catch?(SocketException?socketException)?{

logger.error("FTP的IP地址可能錯(cuò)誤,請正確配置!");

throw?socketException;

}?catch?(IOException?ioException)?{

logger.error("FTP的端口錯(cuò)誤,請正確配置!");

throw?ioException;

}

}

java如何測試連接ftp是否通

java測試連接ftp是否連通可以使用判斷是否有異常來決定,實(shí)例如下:

/**?

*?connectServer?

*?連接ftp服務(wù)器?

*?@throws?java.io.IOException?

*?@param?path?文件夾,空代表根目錄?

*?@param?password?密碼?

*?@param?user????登陸用戶?

*?@param?server?服務(wù)器地址?

*/?

public?void?connectServer(String?server,?String?user,?String?password,??String?path)?

throws?IOException?

{?

//?server:FTP服務(wù)器的IP地址;user:登錄FTP服務(wù)器的用戶名?

//?password:登錄FTP服務(wù)器的用戶名的口令;path:FTP服務(wù)器上的路徑?

ftpClient?=?new?FtpClient();?

ftpClient.openServer(server);?

ftpClient.login(user,?password);?

//path是ftp服務(wù)下主目錄的子目錄?

if?(path.length()?!=?0)???ftpClient.cd(path);?

//用2進(jìn)制上傳、下載?

ftpClient.binary();??????

}?

/**?

*?upload?

*?上傳文件?

*?@throws?java.lang.Exception?

*?@return?-1?文件不存在?

*???????????-2?文件內(nèi)容為空?

*???????????0?成功上傳,返回文件的大小?

*?@param?newname?上傳后的新文件名?

*?@param?filename?上傳的文件?

*/?

public?long?upload(String?filename,String?newname)?throws?Exception?

{?

long?result?=?0;?

TelnetOutputStream?os?=?null;?

FileInputStream?is?=?null;?

try?{??????????

java.io.File?file_in?=?new?java.io.File(filename);?

if?(!file_in.exists())?return?-1;?

if?(file_in.length()==0)?return?-2;?

os?=?ftpClient.put(newname);?

result?=?file_in.length();?

is?=?new?FileInputStream(file_in);?

byte[]?bytes?=?new?byte[1024];?

int?c;?

while?((c?=?is.read(bytes))?!=?-1)?{?

os.write(bytes,?0,?c);?

}?

}?finally?{?

if?(is?!=?null)?{?

is.close();?

}?

if?(os?!=?null)?{?

os.close();?

}?

}?

return?result;?

}?

/**?

*?upload?

*?@throws?java.lang.Exception?

*?@return?

*?@param?filename?

*/?

public?long?upload(String?filename)?

throws?Exception?

{?

String?newname?=?"";?

if?(filename.indexOf("/")-1)?

{?

newname?=?filename.substring(filename.lastIndexOf("/")+1);?

}else?

{?

newname?=?filename;?

}?

return?upload(filename,newname);?

}?

/**?

*???download?

*???從ftp下載文件到本地?

*?@throws?java.lang.Exception?

*?@return?

*?@param?newfilename?本地生成的文件名?

*?@param?filename?服務(wù)器上的文件名?

*/?

public?long?download(String?filename,String?newfilename)?

throws?Exception?

{???

long?result?=?0;?

TelnetInputStream?is?=?null;?

FileOutputStream?os?=?null;?

try?

{?

is?=?ftpClient.get(filename);????????

java.io.File?outfile?=?new?java.io.File(newfilename);?

os?=?new?FileOutputStream(outfile);?

byte[]?bytes?=?new?byte[1024];?

int?c;?

while?((c?=?is.read(bytes))?!=?-1)?{?

os.write(bytes,?0,?c);?

result?=?result?+?c;?

}?

}?catch?(IOException?e)?

{?

e.printStackTrace();?

}?

finally?{?

if?(is?!=?null)?{?

is.close();?

}?

if?(os?!=?null)?{?

os.close();?

}?

}?

return?result;?

}?

/**?

*?取得某個(gè)目錄下的所有文件列表?

*?

*/?

public?List?getFileList(String?path)?

{?

List?list?=?new?ArrayList();?

try?

{?

DataInputStream?dis?=?new???DataInputStream(ftpClient.nameList(path));?

String?filename?=?"";?

while((filename=dis.readLine())!=null)???

{???

list.add(filename);?????????

}???

}?catch?(Exception?e)?

{?

e.printStackTrace();?

}?

return?list;?

}?

/**?

*?closeServer?

*?斷開與ftp服務(wù)器的鏈接?

*?@throws?java.io.IOException?

*/?

public?void?closeServer()?

throws?IOException?

{????

try?

{?

if?(ftpClient?!=?null)?

{?

ftpClient.closeServer();??????

}?

}?catch?(IOException?e)?{?

e.printStackTrace();?

}?

}?

public?static?void?main(String?[]?args)?throws?Exception?

{?

FtpUtil?ftp?=?new?FtpUtil();?

try?{?

//連接ftp服務(wù)器?

("10.163.7.15",?"cxl",?"1",?"info2");?

/**???上傳文件到?info2?文件夾下?*/?

System.out.println("filesize:"+("f:/download/Install.exe")+"字節(jié)");?

/**?取得info2文件夾下的所有文件列表,并下載到?E盤下?*/?

List?list?=?(".");?

for?(int?i=0;ilist.size();i++)?

{?

String?filename?=?(String)list.get(i);?

System.out.println(filename);?

(filename,"E:/"+filename);?

}?

}?catch?(Exception?e)?{?

///?

}finally?

{?

;?

}?

}???

}

java如何實(shí)現(xiàn)將FTP文件轉(zhuǎn)移到另一個(gè)FTP服務(wù)器上

你有FTPClient就比較好辦,假如你的兩臺FTP服務(wù)器分別為fs1和fs2

在本地開發(fā)代碼思路如下:

通過FTPClient連接上fs1,然后下載(可以循環(huán)批量下載)到本地服務(wù)器,保存到一個(gè)臨時(shí)目錄。

下載完成后,F(xiàn)TPClient斷開與fs1的連接,記得必須logout。

本地服務(wù)器通過FileInputStream將剛下載到臨時(shí)目錄的文件讀進(jìn)來,得到一個(gè)ListFile集合。

通過FTPClient連接上fs2,循環(huán)ListFile集合,將文件上傳至fs2的特定目錄,然后清空臨時(shí)目錄,上傳完畢后,斷開fs2的連接,同樣必須logout。

怎么用Java實(shí)現(xiàn)FTP上傳

sun.net..,該類庫主要提供了用于建立FTP連接的類。利用這些類的方法,編程人員可以遠(yuǎn)程登錄到FTP服務(wù)器,列舉該服務(wù)器上的目錄,設(shè)置傳輸協(xié)議,以及傳送文件。FtpClient類涵蓋了幾乎所有FTP的功能,F(xiàn)tpClient的實(shí)例變量保存了有關(guān)建立"代理"的各種信息。下面給出了這些實(shí)例變量:

public static boolean useFtpProxy

這個(gè)變量用于表明FTP傳輸過程中是否使用了一個(gè)代理,因此,它實(shí)際上是一個(gè)標(biāo)記,此標(biāo)記若為TRUE,表明使用了一個(gè)代理主機(jī)。

public static String ftpProxyHost

此變量只有在變量useFtpProxy為TRUE時(shí)才有效,用于保存代理主機(jī)名。

public static int ftpProxyPort此變量只有在變量useFtpProxy為TRUE時(shí)才有效,用于保存代理主機(jī)的端口地址。

FtpClient有三種不同形式的構(gòu)造函數(shù),如下所示:

1、public FtpClient(String hostname,int port)

 此構(gòu)造函數(shù)利用給出的主機(jī)名和端口號建立一條FTP連接。

2、public FtpClient(String hostname)

此構(gòu)造函數(shù)利用給出的主機(jī)名建立一條FTP連接,使用默認(rèn)端口號。

3、FtpClient()

此構(gòu)造函數(shù)將創(chuàng)建一FtpClient類,但不建立FTP連接。這時(shí),F(xiàn)TP連接可以用openServer方法建立。

一旦建立了類FtpClient,就可以用這個(gè)類的方法來打開與FTP服務(wù)器的連接。類ftpClient提供了如下兩個(gè)可用于打開與FTP服務(wù)器之間的連接的方法。

public void openServer(String hostname)

這個(gè)方法用于建立一條與指定主機(jī)上的FTP服務(wù)器的連接,使用默認(rèn)端口號。

public void openServer(String host,int port)

這個(gè)方法用于建立一條與指定主機(jī)、指定端口上的FTP服務(wù)器的連接。

打開連接之后,接下來的工作是注冊到FTP服務(wù)器。這時(shí)需要利用下面的方法。

public void login(String username,String password)

此方法利用參數(shù)username和password登錄到FTP服務(wù)器。使用過Intemet的用戶應(yīng)該知道,匿名FTP服務(wù)器的登錄用戶名為anonymous,密碼一般用自己的電子郵件地址。

下面是FtpClient類所提供的一些控制命令。

public void cd(String remoteDirectory):該命令用于把遠(yuǎn)程系統(tǒng)上的目錄切換到參數(shù)remoteDirectory所指定的目錄。

public void cdUp():該命令用于把遠(yuǎn)程系統(tǒng)上的目錄切換到上一級目錄。

public String pwd():該命令可顯示遠(yuǎn)程系統(tǒng)上的目錄狀態(tài)。

public void binary():該命令可把傳輸格式設(shè)置為二進(jìn)制格式。

public void ascii():該命令可把傳輸協(xié)議設(shè)置為ASCII碼格式。

public void rename(String string,String string1):該命令可對遠(yuǎn)程系統(tǒng)上的目錄或者文件進(jìn)行重命名操作。

除了上述方法外,類FtpClient還提供了可用于傳遞并檢索目錄清單和文件的若干方法。這些方法返回的是可供讀或?qū)懙妮斎?、輸出流。下面是其中一些主要的方法?/p>

public TelnetInputStream list()

返回與遠(yuǎn)程機(jī)器上當(dāng)前目錄相對應(yīng)的輸入流。

public TelnetInputStream get(String filename)

獲取遠(yuǎn)程機(jī)器上的文件filename,借助TelnetInputStream把該文件傳送到本地。

public TelnetOutputStream put(String filename)

以寫方式打開一輸出流,通過這一輸出流把文件filename傳送到遠(yuǎn)程計(jì)算機(jī)

package myUtil;

import java.io.DataInputStream;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.OutputStream;

import java.util.ArrayList;

import java.util.List;

import java.util.StringTokenizer;

import sun.net.TelnetInputStream;

import sun.net.TelnetOutputStream;

import sun.net.;

/**

* ftp上傳,下載

*

* @author why 2009-07-30

*

*/

public class FtpUtil {

private String ip = "";

private String username = "";

private String password = "";

private int port = -1;

private String path = "";

FtpClient ftpClient = null;

OutputStream os = null;

FileInputStream is = null;

public FtpUtil(String serverIP, String username, String password) {

this.ip = serverIP;

this.username = username;

this.password = password;

}

public FtpUtil(String serverIP, int port, String username, String password) {

this.ip = serverIP;

this.username = username;

this.password = password;

this.port = port;

}

/**

* 連接ftp服務(wù)器

*

* @throws IOException

*/

public boolean connectServer() {

ftpClient = new FtpClient();

try {

if (this.port != -1) {

ftpClient.openServer(this.ip, this.port);

} else {

ftpClient.openServer(this.ip);

}

ftpClient.login(this.username, this.password);

if (this.path.length() != 0) {

ftpClient.cd(this.path);// path是ftp服務(wù)下主目錄的子目錄

}

ftpClient.binary();// 用2進(jìn)制上傳、下載

System.out.println("已登錄到\"" + ftpClient.pwd() + "\"目錄");

return true;

} catch (IOException e) {

e.printStackTrace();

return false;

}

}

/**

* 斷開與ftp服務(wù)器連接

*

* @throws IOException

*/

public boolean closeServer() {

try {

if (is != null) {

is.close();

}

if (os != null) {

os.close();

}

if (ftpClient != null) {

ftpClient.closeServer();

}

System.out.println("已從服務(wù)器斷開");

return true;

} catch (IOException e) {

e.printStackTrace();

return false;

}

}

/**

* 檢查文件夾在當(dāng)前目錄下是否存在

*

* @param dir

*@return

*/

private boolean isDirExist(String dir) {

String pwd = "";

try {

pwd = ftpClient.pwd();

ftpClient.cd(dir);

ftpClient.cd(pwd);

} catch (Exception e) {

return false;

}

return true;

}

/**

* 在當(dāng)前目錄下創(chuàng)建文件夾

*

* @param dir

* @return

* @throws Exception

*/

private boolean createDir(String dir) {

try {

ftpClient.ascii();

StringTokenizer s = new StringTokenizer(dir, "/"); // sign

s.countTokens();

String pathName = ftpClient.pwd();

while (s.hasMoreElements()) {

pathName = pathName + "/" + (String) s.nextElement();

try {

ftpClient.sendServer("MKD " + pathName + "\r\n");

} catch (Exception e) {

e = null;

return false;

}

ftpClient.readServerResponse();

}

ftpClient.binary();

return true;

} catch (IOException e1) {

e1.printStackTrace();

return false;

}

}

/**

* ftp上傳 如果服務(wù)器段已存在名為filename的文件夾,該文件夾中與要上傳的文件夾中同名的文件將被替換

*

* @param filename

* 要上傳的文件(或文件夾)名

* @return

* @throws Exception

*/

public boolean upload(String filename) {

String newname = "";

if (filename.indexOf("/") -1) {

newname = filename.substring(filename.lastIndexOf("/") + 1);

} else {

newname = filename;

}

return upload(filename, newname);

}

/**

* ftp上傳 如果服務(wù)器段已存在名為newName的文件夾,該文件夾中與要上傳的文件夾中同名的文件將被替換

*

* @param fileName

* 要上傳的文件(或文件夾)名

* @param newName

* 服務(wù)器段要生成的文件(或文件夾)名

* @return

*/

public boolean upload(String fileName, String newName) {

try {

String savefilename = new String(fileName.getBytes("GBK"),

"GBK");

File file_in = new File(savefilename);// 打開本地待長傳的文件

if (!file_in.exists()) {

throw new Exception("此文件或文件夾[" + file_in.getName() + "]有誤或不存在!");

}

if (file_in.isDirectory()) {

upload(file_in.getPath(), newName, ftpClient.pwd());

} else {

uploadFile(file_in.getPath(), newName);

}

if (is != null) {

is.close();

}

if (os != null) {

os.close();

}

return true;

} catch (Exception e) {

e.printStackTrace();

System.err.println("Exception e in Ftp upload(): " + e.toString());

return false;

} finally {

try {

if (is != null) {

is.close();

}

if (os != null) {

os.close();

}

} catch (IOException e) {

e.printStackTrace();

}

}

}

/**

* 真正用于上傳的方法

*

* @param fileName

* @param newName

* @param path

* @throws Exception

*/

private void upload(String fileName, String newName, String path)

throws Exception {

String savefilename = new String(fileName.getBytes("ISO-8859-1"), "GBK");

File file_in = new File(savefilename);// 打開本地待長傳的文件

if (!file_in.exists()) {

throw new Exception("此文件或文件夾[" + file_in.getName() + "]有誤或不存在!");

}

if (file_in.isDirectory()) {

if (!isDirExist(newName)) {

createDir(newName);

}

ftpClient.cd(newName);

File sourceFile[] = file_in.listFiles();

for (int i = 0; i sourceFile.length; i++) {

if (!sourceFile[i].exists()) {

continue;

}

if (sourceFile[i].isDirectory()) {

this.upload(sourceFile[i].getPath(), sourceFile[i]

.getName(), path + "/" + newName);

} else {

this.uploadFile(sourceFile[i].getPath(), sourceFile[i]

.getName());

}

}

} else {

uploadFile(file_in.getPath(), newName);

}

ftpClient.cd(path);

}

/**

* upload 上傳文件

*

* @param filename

* 要上傳的文件名

* @param newname

* 上傳后的新文件名

* @return -1 文件不存在 =0 成功上傳,返回文件的大小

* @throws Exception

*/

public long uploadFile(String filename, String newname) throws Exception {

long result = 0;

TelnetOutputStream os = null;

FileInputStream is = null;

try {

java.io.File file_in = new java.io.File(filename);

if (!file_in.exists())

return -1;

os = ftpClient.put(newname);

result = file_in.length();

is = new FileInputStream(file_in);

byte[] bytes = new byte[1024];

int c;

while ((c = is.read(bytes)) != -1) {

os.write(bytes, 0, c);

}

} finally {

if (is != null) {

is.close();

}

if (os != null) {

os.close();

}

}

return result;

}

/**

* 從ftp下載文件到本地

*

* @param filename

* 服務(wù)器上的文件名

* @param newfilename

* 本地生成的文件名

* @return

* @throws Exception

*/

public long downloadFile(String filename, String newfilename) {

long result = 0;

TelnetInputStream is = null;

FileOutputStream os = null;

try {

is = ftpClient.get(filename);

java.io.File outfile = new java.io.File(newfilename);

os = new FileOutputStream(outfile);

byte[] bytes = new byte[1024];

int c;

while ((c = is.read(bytes)) != -1) {

os.write(bytes, 0, c);

result = result + c;

}

} catch (IOException e) {

e.printStackTrace();

} finally {

try {

if (is != null) {

is.close();

}

if (os != null) {

os.close();

}

} catch (IOException e) {

e.printStackTrace();

}

}

return result;

}

/**

* 取得相對于當(dāng)前連接目錄的某個(gè)目錄下所有文件列表

*

* @param path

* @return

*/

public List getFileList(String path) {

List list = new ArrayList();

DataInputStream dis;

try {

dis = new DataInputStream(ftpClient.nameList(this.path + path));

String filename = "";

while ((filename = dis.readLine()) != null) {

list.add(filename);

}

} catch (IOException e) {

e.printStackTrace();

}

return list;

}

public static void main(String[] args) {

FtpUtil ftp = new FtpUtil("192.168.11.11", "111", "1111");

;

boolean result = ("C:/Documents and Settings/ipanel/桌面/java/Hibernate_HQL.docx", "amuse/audioTest/music/Hibernate_HQL.docx");

System.out.println(result ? "上傳成功!" : "上傳失?。?);

;

/**

* FTP遠(yuǎn)程命令列表 USER PORT RETR ALLO DELE SITE XMKD CDUP FEAT PASS PASV STOR

* REST CWD STAT RMD XCUP OPTS ACCT TYPE APPE RNFR XCWD HELP XRMD STOU

* AUTH REIN STRU SMNT RNTO LIST NOOP PWD SIZE PBSZ QUIT MODE SYST ABOR

* NLST MKD XPWD MDTM PROT

* 在服務(wù)器上執(zhí)行命令,如果用sendServer來執(zhí)行遠(yuǎn)程命令(不能執(zhí)行本地FTP命令)的話,所有FTP命令都要加上\r\n

* ftpclient.sendServer("XMKD /test/bb\r\n"); //執(zhí)行服務(wù)器上的FTP命令

* ftpclient.readServerResponse一定要在sendServer后調(diào)用

* nameList("/test")獲取指目錄下的文件列表 XMKD建立目錄,當(dāng)目錄存在的情況下再次創(chuàng)建目錄時(shí)報(bào)錯(cuò) XRMD刪除目錄

* DELE刪除文件

*/

}

}

java ftp上傳時(shí)斷網(wǎng),文件損壞

以二進(jìn)制流上傳,然后實(shí)現(xiàn)斷點(diǎn)續(xù)傳。

/**

* 上傳文件到FTP服務(wù)器,支持?jǐn)帱c(diǎn)續(xù)傳

* @param local 本地文件名稱,絕對路徑

* @param remote 遠(yuǎn)程文件路徑,使用/home/directory1/subdirectory/file.ext 按照Linux上的路徑指定方式,支持多級目錄嵌套,支持遞歸創(chuàng)建不存在的目錄結(jié)構(gòu)

* @return 上傳結(jié)果

* @throws IOException

*/

public UploadStatus upload(String local,String remote) throws IOException{

FTPClient ftpClient = new FTPClient();

//設(shè)置PassiveMode傳輸

ftpClient.enterLocalPassiveMode();

//設(shè)置以二進(jìn)制流的方式傳輸

ftpClient.setFileType();

UploadStatus result;

//對遠(yuǎn)程目錄的處理

String remoteFileName = remote;

if(remote.contains("/")){

remoteFileName = remote.substring(remote.lastIndexOf("/")+1);

String directory = remote.substring(0,remote.lastIndexOf("/")+1);

if(!directory.equalsIgnoreCase("/")!ftpClient.changeWorkingDirectory(directory)){

//如果遠(yuǎn)程目錄不存在,則遞歸創(chuàng)建遠(yuǎn)程服務(wù)器目錄

int start=0;

int end = 0;

if(directory.startsWith("/")){

start = 1;

}else{

start = 0;

}

end = directory.indexOf("/",start);

while(true){

String subDirectory = remote.substring(start,end);

if(!ftpClient.changeWorkingDirectory(subDirectory)){

if(ftpClient.makeDirectory(subDirectory)){

ftpClient.changeWorkingDirectory(subDirectory);

}else {

System.out.println("創(chuàng)建目錄失敗");

return UploadStatus.Create_Directory_Fail;

}

}

start = end + 1;

end = directory.indexOf("/",start);

//檢查所有目錄是否創(chuàng)建完畢

if(end = start){

break;

}

}

}

}

//檢查遠(yuǎn)程是否存在文件

FTPFile[] files = ftpClient.listFiles(remoteFileName);

if(files.length == 1){

long remoteSize = files[0].getSize();

File f = new File(local);

long localSize = f.length();

if(remoteSize==localSize){

return UploadStatus.File_Exits;

}else if(remoteSize localSize){

return UploadStatus.Remote_Bigger_Local;

}

//嘗試移動文件內(nèi)讀取指針,實(shí)現(xiàn)斷點(diǎn)續(xù)傳

InputStream is = new FileInputStream(f);

if(is.skip(remoteSize)==remoteSize){

ftpClient.setRestartOffset(remoteSize);

if(ftpClient.storeFile(remote, is)){

return UploadStatus.Upload_From_Break_Success;

}

}

//如果斷點(diǎn)續(xù)傳沒有成功,則刪除服務(wù)器上文件,重新上傳

if(!ftpClient.deleteFile(remoteFileName)){

return UploadStatus.Delete_Remote_Faild;

}

is = new FileInputStream(f);

if(ftpClient.storeFile(remote, is)){

result = UploadStatus.Upload_New_File_Success;

}else{

result = UploadStatus.Upload_New_File_Failed;

}

is.close();

}else {

InputStream is = new FileInputStream(local);

if(ftpClient.storeFile(remoteFileName, is)){

result = UploadStatus.Upload_New_File_Success;

}else{

result = UploadStatus.Upload_New_File_Failed;

}

is.close();

}

return result;

}


標(biāo)題名稱:javaftp斷開代碼 java ftp斷點(diǎn)續(xù)傳
URL標(biāo)題:http://weahome.cn/article/dooigcc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部