Differences

This shows you the differences between the selected revisions of the page.

faq_utf8 2010-12-31 faq_utf8 2020-01-11 (current)
Line 1: Line 1:
====== How do I make WinSCP show localized and/or UTF-8 encoded (Unicode) filenames correctly? ====== ====== How do I make WinSCP show localized and/or UTF-8 encoded (Unicode) filenames correctly? ======
-===== SFTP ===== +===== [[sftp]] SFTP ===== 
-[[protocols#sftp|SFTP protocol]] specification requires that client and server uses UTF-8 encoding (Unicode) for file names.+[[sftp|SFTP protocol]] specification requires that client and server uses UTF-8 encoding (Unicode) for file names.
-·WinSCP can operate in two modes, either it expects that the local machine and the server uses the same encoding (no conversion is done) or treats remote filenames as UTF-8 (Unicode) encoded. By default, the first mode is used for [[protocols#sftp|SFTP-3]] and lower ((SFTP specification before version 4 has not required UTF-8 explicitly.)), the latter mode is used for newer versions. You can force non-default behaviour using session option //[[ui_login_environment#utf|UTF-8 encoding for filenames·]]//. This is useful especially for servers that use UTF-8 natively, thus even for older versions of SFTP.+WinSCP by default uses UTF-8 encoding. You can force non-default behavior using session option //[[ui_login_environment#utf|UTF-8 encoding for filenames]]//, particularly when your server does not use UTF-8.
Please be aware that if your server does not support UTF-8 encoding, but uses its local legacy encoding instead, it is its fault. The problem is not on WinSCP side. You should push your server provider to add support for UTF-8, and not ask for support of legacy encoding in WinSCP. Please be aware that if your server does not support UTF-8 encoding, but uses its local legacy encoding instead, it is its fault. The problem is not on WinSCP side. You should push your server provider to add support for UTF-8, and not ask for support of legacy encoding in WinSCP.
 +
 +By default WinSCP will automatically fallback to legacy Windows encoding, when a server returns a directory listing with file names not in UTF-8 encoding. For this reasons, you might get an inconsistent behavior during operations with files, depending on whether you visited a folder with non-ASCII file names before or not (or did not visit any directory at all, such as in [[scripting]]). To get a consistent behavior with a server that does not use UTF-8, disable UTF-8 encoding explicitly in session settings.
===== FTP ===== ===== FTP =====
-For [[protocols#ftp|FTP]] protocol, usage of UTF-8 is also controlled by session option //[[ui_login_environment#utf|UTF-8 encoding for filenames ]]//.+For [[ftp|FTP]] protocol, usage of UTF-8 is also controlled by session option //[[ui_login_environment#utf|UTF-8 encoding for filenames]]//. 
 + 
 +===== [[scp]] SCP ===== 
 +For [[scp|SCP]] protocol, usage of UTF-8 is also controlled by session option //[[ui_login_environment#utf|UTF-8 encoding for filenames]]//. 
 + 
 +===== WebDAV ===== 
 +With WebDAV, a client and a server are required to use UTF-8. No configuration is necessary.
-===== SCP ===== +===== [[ansi]] Legacy ANSI Encoding =====
-For [[protocols#scp|SCP]] protocol filename encoding conversion is not supported at all.+
-===== Remark ===== +When not using UTF-8 encoding, WinSCP assumes the server is using the same legacy ANSI encoding as configured for local machine in //Control Panel > Clock and Region > Region > Administrative > Language for non-Unicode programs//. &wincp
-Also note that WinSCP is not an Unicode application. Hence it can display only characters that are present in default language code page of your workstation. For example, even if your server supports UTF-8 (Unicode), its filenames contains Chinese characters, but your workstation default language is German, WinSCP will not be able to display the Chinese characters correctly. However it should be able to manage the files correctly. To find out what is your default language, go to //Start > Settings > Control Panel > Regional and Language Options > Advanced > Language for non-Unicode programs// (on Windows XP).+

Last modified: by martin