我試圖在Mac OS X計算機上的文件中執行「查找並替換」操作。雖然它似乎正常工作。看起來該文件有所改變。我使用的文本編輯器(文本牧馬人)完成後無法打開文件。使用Python查找和替換 - 二進制文件
下面是代碼,因爲我有它:
import fileinput
for line in fileinput.FileInput("testfile.txt",inplace=1):
line = line.replace("newhost",host)
print line,
當我認爲來自終端的文件,但它說「testfile的」可以是二進制文件。無論如何看到它?這個替換是否有可能破壞文件?我有另一種方法可以使用嗎?我非常感謝幫助。
謝謝 亞倫
UPDATE:實際的文件不是.txt文件是一個文件的.plist這是在Mac OS X中的偏好文件,如果有什麼差別
鏈接到的plist文件: http://www.queencitytech.com/plist.zip
我的代碼也適用於我,但就像我說過的,它似乎改變了文件,而不僅僅是文本。我正在嘗試你的方法,看看它是否有不同的反應。但是,它給了我一個TypeError:不能連接'str'和'file'對象。任何想法什麼是錯的?謝謝,亞倫 – Aaron 2010-06-02 16:04:46
糟糕 - 修好了。 – 2010-06-02 16:34:03
這確實修復了錯誤。但輸出文件仍然不想在編輯器中打開,並且程序無法識別。我添加了一個鏈接到我正在改變的實際文件。我只替換'newhost'。 有一件事我注意到了,如果我通過終端手動編輯文件並替換'newhost'並保存更改。這也不會讓我在編輯器或應用程序(iChat)中打開。 – Aaron 2010-06-02 16:54:12