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