2014-07-16 06:45:10 -04:00
|
|
|
# test reading a given number of characters
|
|
|
|
|
2020-03-22 22:26:08 -04:00
|
|
|
|
2014-07-16 06:45:10 -04:00
|
|
|
def do(mode):
|
2014-10-04 02:54:16 -04:00
|
|
|
if mode == "rb":
|
|
|
|
enc = None
|
|
|
|
else:
|
|
|
|
enc = "utf-8"
|
2023-05-11 00:28:35 -04:00
|
|
|
f = open("data/utf-8_2.txt", mode=mode, encoding=enc)
|
2014-07-16 06:45:10 -04:00
|
|
|
print(f.read(1))
|
|
|
|
print(f.read(1))
|
|
|
|
print(f.read(2))
|
|
|
|
print(f.read(4))
|
2015-01-29 09:56:09 -05:00
|
|
|
|
|
|
|
# skip to end of line
|
|
|
|
f.readline()
|
|
|
|
|
|
|
|
# check 3-byte utf-8 char
|
|
|
|
print(f.read(1 if mode == "rt" else 3))
|
|
|
|
|
|
|
|
# check 4-byte utf-8 char
|
|
|
|
print(f.read(1 if mode == "rt" else 4))
|
|
|
|
|
2014-07-16 06:45:10 -04:00
|
|
|
f.close()
|
|
|
|
|
2020-03-22 22:26:08 -04:00
|
|
|
|
2014-07-16 06:45:10 -04:00
|
|
|
do("rb")
|
|
|
|
do("rt")
|