При попытке использовать этот код он читает 0x0a как 0xd0.
Код: Выделить всё
with open(path, "rb") as root:
b_arr = root.read() + b" "
print("Processing...")
buffer = ""
b_arr_wizard = ""
chars = ""
for i in range(len(b_arr)):
if i % 16 == 0 or i == len(b_arr)-1:
print(len(buffer))
buffer += " "*((16*3)-len(buffer))
buffer += "| "
for _ in buffer.split():
if _ == "|":
continue
#print(_)
if int(_, base=16) >= 32:
buffer += chr(int(_, base=16))
chars += chr(int(_, base=16))
else:
buffer += "."
chars += chr(int(_, base=16))
b_arr_wizard += buffer + "\n"
buffer = ""
buffer += str(hex(b_arr[i])[2:])+ "0"*(2-len(str(hex(b_arr[i])[2:]))) + " "
Код: Выделить всё
abc
def
Код: Выделить всё
61 62 63 d0 a0 64 65 66 | abcÐ defПодробнее здесь: https://stackoverflow.com/questions/788 ... g-as-bytes