『壹』 為什麼FTP不能上傳帶有中文文件名的文件
FTP不能上傳帶有中文文件名的文件是設置錯誤造成的,解決方法為:
1、登陸Dreamstime,點擊右上角「我的賬戶」。
『貳』 FTP地址不支持中文的嗎
如果你的主機是 Windows 中文版的,那可以,不然就不行。最好不要用中文,這會給很多人帶來麻煩。
『叄』 FTP上傳時怎麼解決中文路徑和中文名稱
java上傳文件到ftp有兩種實現方式,一種是使用sun公司提供的sun.net.ftp包裡面的FtpClient,另一種是Apache組織提供的org.apache.commons.net.ftp包里的FTPClient,現在我來分別說下兩種實現方式。
sun的FtpClient:我們先來看如下代碼
public static boolean uploadFileBySun(StringBuffer fileContent,String server,String userName, String userPassword, String path, String fileName) {
FtpClient ftpClient = new FtpClient();
try {
//打開ftp伺服器
ftpClient.openServer(server);
//使用指定用戶登錄
ftpClient.login(userName, userPassword);
//轉到指定路徑
ftpClient.cd(path);
TelnetOutputStream os = null;
//新建一個文件
// os = ftpClient.put(new String(fileName.getBytes("GBK"), "iso-8859-1"));
os = ftpClient.put(fileName);
OutputStreamWriter osw = new OutputStreamWriter(os);
BufferedWriter bw = new BufferedWriter(osw);
bw.write(fileContent.toString());
bw.flush();
bw.close();
} catch (Exception e) {
System.out.println(e.getMessage());
return false;
} finally {
try {
//關閉ftp連接
ftpClient.closeServer();
} catch (Exception e) {
e.printStackTrace();
}
}
return true;
}
代碼結束符!
正如上面的代碼,上傳文件分為六步,第一步,打開ftp伺服器,第二步,使用指定用戶名以及密碼登陸,第三步,轉到指定文件路徑,第四步,創建一個文件,第五步,往文件裡面寫東西,並關閉文件,第六步,釋放ftp連接。最後一步釋放ftp連接很重要,一般ftp伺服器連接數都是有限的,所以不管文件上傳成功或是失敗都必須釋放連接。上面這個例子上傳的文件是字元串文本,必須要提的是,如果上傳的字元串文本較長(我項目中上傳的文本大概在160kb上下),使用上面的方法可能會出現字元串丟失的情況,原因不明,可能跟緩存有關,所以如果文本較長,建議用戶使用位元組流。還有一個問題,如果要上傳的文件名是中文的話,上傳的文件名將是亂碼,亂碼問題我嘗試許多轉碼也解決不了,於是不得不使用下面的方法了。
Apache的FTPClient:
public static boolean uploadFileByApacheByBinary(StringBuffer fileContent,String server,String userName, String userPassword, String path, String fileName) {
FTPClient ftpClient = new FTPClient();
try {
InputStream is = null;
is = new ByteArrayInputStream(fileContent.toString().getBytes());
ftpClient.connect(server);
ftpClient.login(userName, userPassword);
ftpClient.changeWorkingDirectory(path);
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
ftpClient.storeFile(new String(fileName.getBytes("GBK"), "iso-8859-1") , is);
is.close();
} catch (Exception e) {
e.printStackTrace();
return false;
} finally {
if(ftpClient.isConnected()) {
try {
ftpClient.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
}
}
return true;
}
代碼結束符!
Apache上傳文件的步驟跟sun的實現基本一致,只是方法名有些區別而已。在這里我將字元串文本轉換成了ByteArrayInputStream位元組緩沖流,這是個很有用的東西,常用來進行字元到流的轉換。轉換成位元組上傳就不會出現丟失文件內容的情況了。ftpClient.storeFile(new String(fileName.getBytes(「GBK」), 「iso-8859-1″) , is)這句代碼將is輸入流的東西上傳到ftp伺服器的fileName文件中,在這里我們對fileName文件名進行了轉碼,經測試中文沒有亂碼(ftp伺服器使用的是window,其他平台未測試),而如果我們使用sun的ftp實現,即使文件名進行這樣類似的轉碼,依然是亂碼。
『肆』 FTP軟體應如何設置才能支持帶中文文件名的文件正常上傳下載
ftp上傳文件時,必須使用英文字元或數據的文件名才能上傳,或者是兩個字的漢字才能上傳到伺服器的話:
1、進入ServerU管理端界面,點擊「伺服器限制和設置」分類功能按鈕,
2、在ServerU伺服器限制和設置界面,選擇「FTP設置」頁簽,點擊窗口下面的「全局設置」按鈕。
3、在打開的「FTP命令屬性」界面,去掉最後一行的勾選,即不要勾選」對所有已收發的路徑和文件名使用UTF-8編碼「。
4、選擇「FTP設置」頁簽,禁用」OPTS UTF8 「,
完成上面的兩處改變後,無法上傳中文名稱的文件的問題應該已經解決了。
『伍』 FTP無法直接復制中文文件
你可以試下8UFTP,你的問題就解決了。
下載說明地址:
網路搜索:中國8U
國產簡體中文版FTP免費工具。非漢化版,非破解版。目前FTP工具市場上體積相對最小。涵蓋其它FTP工具功能,支持多線程上傳,同時支持直接上傳壓縮包,可在空間上直接壓縮上傳,也可上傳後在空間上直接解壓。
8UFTP工具分為8UFTP客戶端工具和8UFTP智能擴展伺服器端工具
8UFTP工具包括8UFTP客戶端工具和8UFTP智能擴展伺服器端工具。
1、同時安裝8UFTP客戶端和8UFTP智能擴展伺服器端工具,結合實現在線解壓縮功能。
2、8UFTP客戶支持目前市場上所有FTP服務端
3、8UFTP智能擴展伺服器端配合客戶端工具實現在線解壓縮功能,當前僅支持Serv-U。
支持在線解壓縮,支持多線程上傳。
支持在線解壓縮,防CC攻擊,防暴力破解FTP密碼
『陸』 FTP 不能支持中文路徑啊
你在
FTP伺服器目錄訪問上設置一下權根!!
說明:(勾選後可以實現的目的)
讀取:可以下載該目錄文件。
寫入:可以更改該目錄文件,包括重命名,上傳文件等。
追加:可以在此目錄下新建文件。
刪除:不用說了。
執行:不用說了。
列表:可以看此目錄下的內容。
創建:可以在此目錄下新建夾。
移除:可以刪除此目錄下的子目錄。
繼承:子目錄的許可權和根目錄一樣
根據你的需要,你可以新建一個FTP用戶,然後目錄指向你不想讓人看見的目錄,許可權設為:讀取,列表,繼承。
『柒』 下載路徑中有中文,無法下載怎麼辦
FTP路徑是可以支持中文的!~你在用FLASHGET的時候需要填寫FTP的用戶名和密碼!在站點屬性裡面填寫
『捌』 網站在ftp 上傳的時候 裡面不能有中文名的文件夾么
網站上傳的時候,可以用中文文件名和目錄名的.無限制
『玖』 命令提示符中ftp怎麼顯示中文
採納的答案明顯是錯的,用quote opts utf8 off關閉uft8編碼方式即可顯示中文。
通常,ftp伺服器按標准,使用utf8編碼格式發送文件名,而widows自帶的ftp命令,則使用本地代碼頁,如果是中文系統,也就是說,用的是GBK編碼。要統一編碼,可以發命令給伺服器,讓它關閉uft8編碼方式。
說明:quote是客戶端的命令,表示將後面的內容發送給ftp伺服器。後面的 opts utf8 off 會在ftp伺服器上被執行。
注意,這條命令,只對當前會話有效,下次重新登錄,默認情況下還是會亂碼,需要再次輸入這條命令。