VFS 上傳文件到sftp 報(bào)錯(cuò) 包含中文路徑 或者中文文件名稱

之前用Apache commons-vfs工具進(jìn)行ftp操作(FTP服務(wù)器是 FileZilla Server)

上傳本地文件 到 ftp服務(wù)器上,如果文件名稱 包含 中文 報(bào)錯(cuò)

org.apache.commons.vfs2.FileSystemException: Could not put FTP file to “e:\紅黃藍(lán)股價(jià)暴跌.docx” to

sftp://dsideal:***@192.168.1.168/紅黃藍(lán)股價(jià)暴跌.docx

1、有可能是 登錄FTP用戶名沒有權(quán)限 創(chuàng)建文件 需要登錄用戶有創(chuàng)建文件的權(quán)限

2、需要 修改編碼 從utf-8 到 ISO-8859-1

 private static FileSystemManager fsManager = null;
      
        static {
            try {
                fsManager = VFS.getManager();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
//需要 ftp 服務(wù)器用戶有 添加,修改 刪除文件的權(quán)限

public void upfile(File file) {
    try {
    initConfig();
    
    String inFilePath=ftpPathFull;
     // Create local file object
       FileObject localFile = fsManager.resolveFile(file.getAbsolutePath());
       // Create remote file object
      String sftpUri=   inFilePath+file.getName();
     String  sftpUriiso= new String(sftpUri.getBytes("UTF-8"),"ISO-8859-1");
 FileObject remoteFile = fsManager.resolveFile(sftpUriiso);
// 如果文件不存在,則創(chuàng)建文件
            if (!remoteFile.exists()) {
                remoteFile.createFile();
            }
        remoteFile.copyFrom(localFile, Selectors.SELECT_SELF);
        logger.info("上傳文件成功:"+file.getName());
    } catch (Exception e) {
        e.printStackTrace();
        logger.error(e.getMessage());
        logger.error(e.getLocalizedMessage(),e);
    }
}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1、第八章 Samba服務(wù)器2、第八章 NFS服務(wù)器3、第十章 Linux下DNS服務(wù)器配站點(diǎn),域名解析概念命令:...
    哈熝少主閱讀 3,905評(píng)論 0 10
  • 1.Linux下如何用命令查看實(shí)時(shí)日志(完整命令) tail -f 路徑.log查看前多少行 tai-200f 路...
    qianyewhy閱讀 2,555評(píng)論 0 11
  • FTP服務(wù)概述 簡(jiǎn)單FTP構(gòu)建及訪問 VSFTP服務(wù)基礎(chǔ) 用戶禁錮、黑白名單 FTP并發(fā)及帶寬限制 一、FTP服務(wù)...
    紫_軒閱讀 8,040評(píng)論 3 25
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,545評(píng)論 19 139
  • 突然發(fā)現(xiàn)我們不聯(lián)系快兩個(gè)月了,按理來說不應(yīng)該這樣喜歡你的,可是真的喜歡你,可能很多朋友不理解我,會(huì)說你們兩個(gè)只是網(wǎng)...
    韓先生_d50a閱讀 262評(píng)論 0 1

友情鏈接更多精彩內(nèi)容