1. 程式人生 > >解決FTPClient上傳檔案為空,顯示0位元組

解決FTPClient上傳檔案為空,顯示0位元組

JAVA使用FTPClient上傳檔案時總是為空

分析:Port模式,是客戶端C在本地開啟一個埠等服務端S去連線建立資料連線;而Pasv模式就是服務端S開啟一個埠等待客戶端C去建立一個數據連線。

解決:預設情況下,FTPCLIENT用的是port模式,可以在FTPCLIENT原碼中看到 模式是客戶端發起的,程式碼上加入 ftpClient.enterLocalPassiveMode(); 就可以了 這個方法的意思就是每次資料連線之前,ftp client告訴ftp server開通一個埠來傳輸資料。這樣做是因為ftp server可能每次開啟不同的埠來傳輸資料,但是在linux上或者其他伺服器上面,由於安全限制,可能某些埠沒有開啟,所以就出現阻塞。