如何在二进制文件中使用 seek()?
How can I use seek() in a binary file?
我正在创建一个简单的工具来编辑一些特定的二进制值,因此我需要使用 seek() 来控制偏移位置,但它没有 returning 十六进制值,而是显示了我的每个值在括号中输入。
我为此使用了一个函数,只要我在 Tkinter 中打开一个文件,它就会被一个命令激活。
这是我的做法:
def openFile():
itaFile = filedialog.askopenfilename(
filetypes=[("ITA Files", ".ITA"), ("All Files", "*")])
itaOpened = open(itaFile, "rb+")
itaOpened.read()
a = itaOpened.seek(6)
print(a)
itaOpened.close()
我需要它 return 我在偏移量 06 处得到这个值:
https://i.stack.imgur.com/ICFPa.png
我该如何解决?
如果我不够具体,请告诉我,我会更详细。
seek
更改文件位置但不读取任何内容。它一般不知道要读多少。搜索后您可以读取 1 个字节。附带说明一下,不要以超出您需要的权限打开 - 无需在代码中创建不必要的故障点。
def openFile():
itaFile = filedialog.askopenfilename(
filetypes=[("ITA Files", ".ITA"), ("All Files", "*")])
with open(itaFile, "rb") as itaOpened:
a = itaOpened.seek(6)
a = itaOpened.read(1)
print(a)
我正在创建一个简单的工具来编辑一些特定的二进制值,因此我需要使用 seek() 来控制偏移位置,但它没有 returning 十六进制值,而是显示了我的每个值在括号中输入。 我为此使用了一个函数,只要我在 Tkinter 中打开一个文件,它就会被一个命令激活。
这是我的做法:
def openFile():
itaFile = filedialog.askopenfilename(
filetypes=[("ITA Files", ".ITA"), ("All Files", "*")])
itaOpened = open(itaFile, "rb+")
itaOpened.read()
a = itaOpened.seek(6)
print(a)
itaOpened.close()
我需要它 return 我在偏移量 06 处得到这个值: https://i.stack.imgur.com/ICFPa.png
我该如何解决? 如果我不够具体,请告诉我,我会更详细。
seek
更改文件位置但不读取任何内容。它一般不知道要读多少。搜索后您可以读取 1 个字节。附带说明一下,不要以超出您需要的权限打开 - 无需在代码中创建不必要的故障点。
def openFile():
itaFile = filedialog.askopenfilename(
filetypes=[("ITA Files", ".ITA"), ("All Files", "*")])
with open(itaFile, "rb") as itaOpened:
a = itaOpened.seek(6)
a = itaOpened.read(1)
print(a)