2017-02-03 77 views
0

如果我想將某個文件從一個系統傳輸到另一個包含非英文字符的系統。那麼FTP是否支持UTF字符集?FTP是否支持UTF字符集?

+0

你的意思是文件名有Unicode字符或文件的內容? –

回答

1

如果您在談論FTP協議,它似乎支持。

FTP協議在RFC 959,其結果發表在1985年 FTP協議被設計在原始Telnet協議的頂部上, 指定在RFC 854中指定的遠程登錄 的相關部分有關FTP的規範是涵蓋Network Virtual 終端(NVT)的規範。根據RFC 854,NVT要求使用 (7位)ASCII作爲字符集。使用任何其他字符集 需要明確的協商。該字符集只包含127 不同的字符:英文字母和數字,標點符號 字符和一些控制字符。在ASCII字符集中不包含其他腳本的重音字母,變音符號或 。爲了支持非英文字符 ,1999年在RFC 2640中擴展了FTP規範 。該擴展需要使用UTF-8 作爲字符集。該字符集是 ASCII的嚴格超集,每個有效的ASCII字符也是 UTF-8中的相同字符。 UTF-8字符集可以顯示任何有效的Unicode 字符。這包括變音符號,重音字母以及不同的 腳本。此擴展與RFC 959完全向後兼容。由於 只使用英文字符,所以您使用的 軟件是否支持RFC 2640並不重要。但是,如果在不使用RFC 2640兼容軟件 的情況下使用非英文字符 ,則會出現問題 - 這些問題完全是由自己制定的,而不是由遵守規範的 來完成。

你可以閱讀更多here

3

我們現在談論的是 Unicode支持。要傳輸UTF-8編碼的文件,請使用「二進制」模式。

儘管RFC 2640將原始FTP規範擴展爲支持非ASCII文件名,但並非每個FTP服務器或FTP客戶端都支持它。在響應

UTF8

您可以通過運行客戶端的命令終端上做如下檢查你的服務器實現:

FEAT

和檢查。如果沒有,您將不得不猜測遠程端的8位編碼或將您的文件名轉換爲ascii。