python - 从另一个文件打开,搜索,写入文件

时间:2013-02-01 04:26:06

标签: python file seek

我想我做错了什么 我不确定它是什么,但我不断得到TypeError: expected a character buffer object

我只是想打开一个文件,寻找某些偏移并覆盖patch1和patch2中的数据。

这是我正在使用的代码,请帮助我并告诉我我做错了什么:

patch1 = open("patch1", "r");
patch2 = open("patch2", "r");
main = open("patchthis.bin", "w");

main.seek(0xC0010);
main.write(patch1);
main.seek(0x7C0010);
main.write(patch1);
main.seek(0x40000);
main.write(patch2);
main.close();

当谈到使用python进行文件处理时,我是菜鸟,即使我已经阅读过它 我真的想开始学习更多,但我需要一些很好的例子,任何帮助肯定会受到赞赏:)

1 个答案:

答案 0 :(得分:4)

您正在尝试将文件对象写入文件,而不是字符串。 尝试:

patch1_text = patch1.read()
main.write(patch1_text)

等等。

在对文件进行操作时也使用with语句:

with open('patch1', 'r') as patch1:
    patch1_text = patch1.read()
    patch1.close()

不要在行尾使用分号!