Viewing file: cp65001.py (1.08 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
""" Code page 65001: Windows UTF-8 (CP_UTF8). """
import codecs import functools
if not hasattr(codecs, 'code_page_encode'): raise LookupError("cp65001 encoding is only available on Windows")
### Codec APIs
encode = functools.partial(codecs.code_page_encode, 65001) _decode = functools.partial(codecs.code_page_decode, 65001)
def decode(input, errors='strict'): return codecs.code_page_decode(65001, input, errors, True)
class IncrementalEncoder(codecs.IncrementalEncoder): def encode(self, input, final=False): return encode(input, self.errors)[0]
class IncrementalDecoder(codecs.BufferedIncrementalDecoder): _buffer_decode = _decode
class StreamWriter(codecs.StreamWriter): encode = encode
class StreamReader(codecs.StreamReader): decode = _decode
### encodings module API
def getregentry(): return codecs.CodecInfo( name='cp65001', encode=encode, decode=decode, incrementalencoder=IncrementalEncoder, incrementaldecoder=IncrementalDecoder, streamreader=StreamReader, streamwriter=StreamWriter, )
|