close
現象/問題:
使用winscp把中文檔案丟到linux 上,發現那些中文檔案無法使用node.js的readdir來存取 但是使用samba把中文檔案丟到linux上,readdir卻可以存取 此外, winscp上傳的中文檔,用SAMBA登入看到亂碼 SAMBA上傳的中文檔,用winscp登入看到是亂碼解釋/過程:
winscp預設不知到是用什麼隊檔名進行編碼動作,所以winscp的檔名linux看不懂,只有winscp自己看得懂 而且,檔名編碼是根據每個應用程式的 如winscp高興使用特殊編碼來寫檔名,winscp自己看得懂就OK 讓winscp使用UTF-8的方式,設定步驟︰ 在 WinSCP 登入 (WinSCP Login) 畫面,點選有亂碼問題的期間 (Session) ,按下右側的編輯 (Edit) 。 將協定 (Protocol) 選為 SFTP 或 FTP 。 按左邊的環境 (Environment) ,把 UTF-8 檔案名稱編碼 (UTF-8 encoding for filenames) 從自動 (Auto) 改成開 (On) 。 按下儲存 (Save) 。結論:
撞到這個問題一開始沒想到是winscp的問題,裝了iconv-lite做不停的轉碼測試,都沒有結果 一度想放棄來使用 workaround來讀取檔名資訊,以為顯示不正常是因為shell的問題....- ls --show-control-chars
- tree -X
附註:
文章標籤
全站熱搜
留言列表