如何将指针移动到特定的字节,并使用Python中的Pickle库进行读取



大家好!

在python中使用二进制文件(.dat(时,我需要一些帮助。我使用Pickle Library在文件中输入成功,但当涉及到从文件中读取时,我的程序不起作用。

我需要帮助;

  1. 以字节为单位计算特定文件的文件大小
  2. 将指针移动到文件中的特定字节。(使用.search会更好。(
  3. 从文件中读取特定字节。(使用pickle.load会更好。(
  4. 在特定文件上循环以打印所有字节。(当为True时,我使用得到EOFError:(

如有任何帮助,我们将不胜感激。

到目前为止,这是我的测试代码,它有很多问题。

import pickle
with open ("BinaryFile.dat" , mode = "ab") as MyFile:
    pickle.dump("New" , MyFile)
with open("BinaryFile.dat" , mode = "rb") as MyReadFile:
    MyReadFile.seek(3)
    NewLine = pickle.load(MyReadFile)
    print (NewLine)
 input("-> ")

pickle将为您做一切,只需检查其API

import pickle
with open ('BinaryFile.dat', mode='ab') as MyFile:
    pickle.dump('New', MyFile)
    pickle.dump([1, 2], MyFile)
    pickle.dump(pickle.dump, MyFile)
    # etc.
with open('BinaryFile.dat', mode='rb') as MyReadFile:
    try:
        while 1:
            print pickle.load(MyReadFile)
    except EOFError:
        pass           

最新更新