2013-02-01 42 views
0

我想我做錯了什麼。
我不知道它是什麼,雖然,但我不斷收到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(); 

我是小白,當談到文件,蟒蛇處理,即使我已經閱讀了有關它。
我真的想開始學習更多,但我需要一些很好的例子,任何幫助肯定會受到讚賞:)

+0

這是PYTHON你不需要分號 – pradyunsg

+0

沒有必要在每行的末尾添加分號。只要你每行只有一條語句(你真的不應該這樣做),分號是不必要的和多餘的。 – Natan

回答

4

你正在嘗試寫入文件對象,而不是字符串。 請嘗試:

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

等等。

上的文件進行操作時與聲明中還使用:

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

而在行的結尾不要用分號!

+0

我還沒有得到想要的結果:(我可以寫入文件,但由於某種原因,我無法打開文件將光標設置爲0xc0010並寫入patch1。我知道它的概率容易,但我只是可以把我的頭圍繞寫補償:0 – james28909

+0

如果你不提供更詳細的信息,我不能幫你,你得到了什麼錯誤? –

+0

你是正確的m8,我很抱歉沒有給你信用,我正在做你所說的關於試圖寫一個字符串時我真的想寫一個文件,畢竟我已經想通了,謝謝你的幫助m8 :) – james28909

相關問題