冰楓論壇

 找回密碼
 立即註冊
搜索
查看: 137|回覆: 1

[心得] 遇到文件乱码?不要怕利用python转换

[複製鏈接]

1

主題

0

好友

1

積分

新手上路

Rank: 1

UID
356761
帖子
3
主題
1
精華
0
積分
1
楓幣
18
威望
1
存款
0
贊助金額
0
推廣
0
GP
1
閱讀權限
10
性別
保密
在線時間
2 小時
註冊時間
2022-8-21
最後登入
2022-8-30
發表於 2022-8-24 20:02:45 |顯示全部樓層

  1. x=open('in.txt','r',encoding='gb18030')
  2. z=x.read()
  3. z=z.encode('gb18030').decode('cp932')
  4. j=z.encode('gb18030').decode('gb18030')
  5. print(j)
  6. if('・' in z):
  7.     y=open('out.txt','w',encoding='utf8')
  8.     y.write(j)
  9. else:
  10.     y=open('out.txt','w',encoding='gb18030')
  11.     y.write(j)
  12. x.close()
  13. y.close()
複製代碼

转换前后

转换前后
複製連結並發給好友,以賺取推廣點數
簡單兩步驟,註冊、分享網址,即可獲得獎勵! 一起推廣文章換商品、賺$$

1

主題

0

好友

1

積分

新手上路

Rank: 1

UID
356761
帖子
3
主題
1
精華
0
積分
1
楓幣
18
威望
1
存款
0
贊助金額
0
推廣
0
GP
1
閱讀權限
10
性別
保密
在線時間
2 小時
註冊時間
2022-8-21
最後登入
2022-8-30
發表於 2022-8-24 20:09:06 |顯示全部樓層
乱码发生的原因是,运行环境有固定的编码格式,用不正确的编码去解码就会乱码,
解决方案是正确的编码去解码然后再用自己的环境编码重新把字符编码一次再解码就能正常显示内容啦
上面gb18030为升级版gb2312(简体中文)编码
cp932又名(ms932)为微软定义的日文编码(shiftjis)扩充
【・】字符是比较难转码的字符,容易报错,需要转utf-8达到正常显示
针对文本文档格式,csv、txt、逗号分隔、tab分隔都能转换哦,大家可以试试
针对其他语言的转码只要改编码部分名称即可
點評回覆

使用道具 舉報

高級模式
B Color Image Link Quote Code Smilies |上傳

正在連接伺服器...
打開冰楓聊天室
廣告刊登意見回饋關於我們職位招聘本站規範DMCA隱私權政策

Copyright © 2011-2022 冰楓論壇, All rights reserved

免責聲明:本網站是以即時上載留言的方式運作,本站對所有留言的真實性、完整性及立場等,不負任何法律責任。

而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。

小黑屋|手機版|冰楓論壇

GMT+8, 2022-10-1 23:27

APP Store下載 Play Store下載
回頂部