文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python 转换文本编码

2023-01-31 06:36

关注
前段时间入手了一个Sony PRS-505的阅读器,不过因为汉化的原因,折腾了很久,终于全部搞定了。麻烦的是505认得最好的编码方式为utf-8,如果是unicode,当文件大于5M时就容易出现问题。所以许多大的txt文档都要转换成utf-8. 手动转换很麻烦,特别是大的文件,打开就要等一段时间,然后还要转码。所以就想到用刚学的Python去做一个小工具,以后方便处理这些书。
 
该工具带GUI界面,经测试能够成功的把ANSI格式txt文件转换为utf8。因为主要看feiku的电子书,所以代码中带有自动重命名功能,目前不带批处理能力,以后补上
 
# -*- coding: cp936 -*-

from Tkinter import *
import tkFileDialog
import tkSimpleDialog
import os
from os import listdir

ipth=''
rpth=''

def inputpath():
        global ipth
        InputFile=tkFileDialog.askopenfilename()
        print InputFile
        ipth=InputFile

def chresultdir():
        global rpth
        OutputDirect=tkSimpleDialog.askstring('Book storage','Input Path',initialvalue="D:/bookresult5")
        print OutputDirect
        rpth=OutputDirect

def processfile():
        fopen=open(ipth,"r")
        tempcontent=fopen.read()
        fopen.close()
        tounicode=unicode(tempcontent,"gb2312","ignore")
        toutf8=tounicode.encode("utf8")
        import os.path
        if (os.path.exists(rpth)==False):
                tempresultdir=os.mkdir(rpth)
        else:
                pass
        os.chdir(rpth)
        tempresult=open("temp.txt",'w')
        tempresult.write(toutf8)
        tempresult.close()
        f1=open(ipth,"r")
        tempname=f1.readline(10)
        print tempname
        newname=tempname.rstrip()
        print newname
        f1.close()
        os.rename("temp.txt",newname+".txt")

root=Tk()
B1=Button(root,text="input",width=30,height=2,command=inputpath).pack()
B2=Button(root,text="OK",width=30,height=2,command=processfile).pack()
B3=Button(root,text="Change Result Directory",width=30,height=2,command=chresultdir).pack()
root.mainloop()
阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯