FtpClient.storeFile返回false解決方法


今天在利用FTP將客戶端文件存儲到服務器端時,在調用ftpClient.storeFile方法后,總是返回false,在百度之后,有提到說添加一行

 ftpClient.enterLocalPassiveMode();

就能解決這個問題,但是在測試之后還是出現,后來整了半天才知道,問題出在中文文件名身上。因此可在代碼中添加如下代碼:

ftpClient.setControlEncoding("UTF-8");

並在創建目錄或者storeFile時,將文件名轉換編碼方式即可,如:

ftpClient.storeFile(new String(fileName.getBytes("UTF-8"),"iso-8859-1"),fiStream);

或者:

ftpClient.makeDirectory(new String(pathName.getBytes("UTF-8"),"iso-8859-1"));
即可解決這個問題


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM