zoukankan      html  css  js  c++  java
  • python模块之quopri: quotedprintable编解码

    转载自:http://blog.csdn.net/zhaoweikid/archive/2007/05/31/1633526.aspx

    quopri模块和base64模块有点象,都是用来编码和解码的,且base64和quoted-printable这两种编码都是在电子邮件中常见的编码。
    quoted-printable的编码方法为: 英文字符除了=以外不做处理,其他字符的编码为=加这个字符的两个字节的16进制数。行尾可用"=\r\n"。

    quopri模块只需要使用它的encode,decode,encodestring,decodestring就可以了,前面两个是对文件进行编解码的(也可以对StringIO中的数据编码解码),后面两个是对字符串进行编码解码的。

    看看下面的例子:

    #-*- encoding: gb2312 -*-
    import quopri

    = "only a test数据"
    = quopri.encodestring(a) # 对字符串编码
    print b
    print quopri.decodestring(b) # 对字符串解码

    import StringIO

    = StringIO.StringIO()
    = StringIO.StringIO()
    = StringIO.StringIO()

    c.write(a)
    c.seek(0)

    quopri.encode(c, d, 0)  
    # 编码StringIO中的数据, 第三个参数0表示不对空格和tab符号编码,为1表示进行编码
    print d.getvalue()
    d.seek(0)
    quopri.decode(d, e)  
    # 解码StringIO中的数据
    print e.getvalue()

    f1 
    = open("aaa.txt""w")
    f1.write(a)
    f1.close()

    f1 
    = open("aaa.txt""r")
    f2 
    = open("bbb.txt""w")

    quopri.encode(f1, f2, 0) 
    # 编码aaa.txt中的数据到bbb.txt

    f1.close()
    f2.close()

    print open("bbb.txt""r").read()
  • 相关阅读:
    Sublime Text 2快捷键大全
    JavaSE
    Ubuntu16.04 install ideaIC-2017.2.5.tar.gz
    Ubuntu/CentOS hadoop-2.x Cluster Setup
    Ubuntu16.04 install hadoop-2.8.1.tar.gz Cluster Setup
    12file
    11input/output
    10function
    09FlowControl
    08test
  • 原文地址:https://www.cnblogs.com/sislcb/p/1342826.html
Copyright © 2011-2022 走看看