您的位置:首页 > 编程语言 > Python开发

分析:windows下cmd默认的编码是ASCII编码 ,windows的中文环境下编码是GBK 方法一:在保存输出流保存的时候做一个对文字GBK编码,在输出到文件 如下 [python] view

2018-01-04 00:16 2531 查看
分析:windows下cmd默认的编码是ASCII编码 ,windows的中文环境下编码是GBK

方法一:在保存输出流保存的时候做一个对文字GBK编码,在输出到文件

如下

[python] view
plain copy

title = textVar.get() + ".txt"              # 获取标题  

content = text.get("0.0", "end")            # 获取内容  

  

if title != ".txt":  

    fileObj = open(title, "wb")             # 打开一个文件  

    if systemName == "nt":  

        print u"Windows系统";  

        fileObj.write(content.encode("gbk"));  

    else:  

        print u"Linux系统";  

        fileObj.write(content);  

    fileObj.close()                         # 关闭打开的文件  

    label.config(text = "已保存")   

else:  

    label.config(text = "请输入标题")   

os.name判断是windows系统还是Linux系统

解决中文乱码

写的时候

[python] view
plain copy

content.encode("gbk")  

读取的时候同样要以gbk解码

[python] view
plain copy

content.decode("gbk")  

方法二:直接设置cmd的编码为UTF-8或者gbk 后面直接就可以读写了

[python] view
plain copy

import sys    

reload(sys)    

sys.setdefaultencoding('utf-8')  

print sys.getdefaultencoding()   
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐