python建立檔名亂碼怎麼解決
資料夾和檔案的名字裡面含有中文字串時出現亂碼的處理:
把該字串編碼轉換為unicode或gbk編碼的字串來解決。程式碼第二行如有宣告編碼格式如utf-8,則程式碼裡面出現中文字串的地方就按照utf-8格式的字串去處理;如沒有編碼宣告,則windows系統預設為gbk編碼,而linux預設為utf-8編碼。
#!/usr/bin/env python # coding:utf-8 import os # 對變數s的值字串 '中國' 按utf-8編碼處理 s = '中國' # 建立的資料夾為亂碼,亂碼原因:程式碼編碼為utf-8的中文字串,但windows系統預設使用gbk編碼,所以會亂碼, 只有它們一致才不亂碼 # os.mkdir(s) # 下面2種方法都能建立含有中文字串的資料夾及檔案 # 把s的值進行解碼,由於其為utf-8編碼,所以使用utf-8解碼 # os.mkdir(s.decode('utf-8')) # windows系統的資料夾和檔案的名字需要為unicode或gbk編碼的字串,才可以正常顯示不亂碼。 # os.mkdir(s.decode('utf-8').encode('gbk')) # f = open(s.decode('utf-8') + '.txt','w') f = open(s.decode('utf-8').encode('gbk') + '.txt','w') f.close()
此外,還發現一個現象,是否在使用unittest模組時,建立含有中文名字的資料夾時,是有區別的。
沒有使用unittest模組時,可以直接建立含有中文的資料夾,也沒出現亂碼。程式碼如下:
#!/usr/bin/env python # coding:utf-8 import os import chardet s = raw_input('請輸入要建立的資料夾名字:') # s的值為ascii字串,即gbk字串 print chardet.detect(s) # 發現不在unittest模組裡面,可以不用編碼解碼處理,直接進行建立含有中文字串的資料夾,結果也沒發現亂碼。而 且檔案程式碼宣告為utf-8,也沒有進行轉碼,真是不可思議。 os.mkdir(s) os.chdir(s)
python學習網,免費的線上學習,歡迎關注!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/151/viewspace-2835072/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 碰見檔名變亂碼怎麼解決?
- python檔案中寫中文亂碼怎麼解決Python
- centos vim亂碼怎麼解決?CentOS
- vscode中文亂碼怎麼解決 vscode輸出亂碼怎麼解決VSCode
- pycharm控制檯亂碼怎麼解決?PyCharm
- android php 亂碼怎麼解決AndroidPHP
- c#匯出檔案,檔名中文亂碼解決方法C#
- Zuul上傳檔案,中文檔名亂碼解決辦法Zuul
- python讀取文字內容中文亂碼怎麼解決Python
- win10檔名稱亂碼怎麼辦 win10系統檔名稱亂碼處理方法Win10
- python urllib2中文亂碼怎麼解決Python
- URL地址中的中文亂碼怎麼解決?
- cat中文正常vim中文亂碼怎麼解決?
- mysql命令列查詢亂碼怎麼解決?MySql命令列
- filezilla裡怎麼解決中文亂碼問題
- win10 yy暱稱亂碼怎麼辦_win10亂碼暱稱怎麼解決Win10
- cad字型亂碼怎麼解決 cad裡面文字顯示???怎麼解決
- SecurecRT亂碼怎麼辦?詳細解決方法分享~Securecrt
- WordPress網站亂碼怎麼辦?快速解決方案網站
- Excel開啟CSV檔案出現亂碼怎麼辦?Excel開啟csv檔案出現亂碼的解決方法Excel
- win10 libreoffice開啟csv檔案中文亂碼怎麼解決Win10
- win10開啟字型資料夾名稱亂碼怎麼回事_win10開啟字型資料夾名稱亂碼解決教程Win10
- python怎麼建立文字檔案Python
- 解決Java POI 匯出Excel時檔名中文亂碼,相容瀏覽器JavaExcel瀏覽器
- win10遊戲亂碼怎麼解決_win10部分遊戲亂碼修復方法Win10遊戲
- centos7系統vim出現亂碼怎麼解決?CentOS
- Java IO 建立檔案解決檔名重複問題Java
- 檔案下載檔名亂碼處理
- win10商店亂碼怎麼解決_win10電腦商店亂碼處理方法Win10
- 解決網站搬家windows下解壓圖片檔名亂碼問題的利器:Bandizip網站Windows
- java實現瀏覽器下載附件時檔名中文亂碼解決方案Java瀏覽器
- python 中文亂碼問題解決方案Python
- 建立python虛擬環境virtualenv錯誤怎麼解決?Python
- win10新裝軟體亂碼怎麼解決_win10新裝軟體顯示亂碼的解決方案Win10
- PHP-如何處理檔名亂碼PHP
- 解決kettle配置檔案中的中文亂碼
- python 生成csv亂碼問題解決方法Python
- Mac OS X 下檔名亂碼出現的原因和解決方法Mac