我试图在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