在Python中查找文本,然后在后面添加行

2024-06-03 00:58:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要读取plist文件并搜索字符串,然后在下一行添加一行新的文本。我无法想象这要花多少时间。但是plist是二进制格式的,所以不确定如何处理它。在

提前谢谢你

亚伦

#Convert plist to XML
os.system('plutil -convert xml1 com.apple.iChat.Jabber.plist')

AutoDiscovery = "<integer>0<integer>"

import fileinput
for line in fileinput.FileInput("com.apple.iChat.Jabber.plist",inplace=1):
   line = line.replace("<key>AutoDiscoverHostAndPort</key>",AutoDiscovery)
   print line,

#Concert plist to binary file
os.system('plutil -convert binary1 com.apple.iChat.Jabber.plist')

Tags: tokeycomappleconvertoslineinteger
2条回答

要先将其转换为xml格式:

plutil -convert xml file.plist

那么剩下的应该很容易。在

编辑:

^{pr2}$

编辑2:

# convert plist from binary to xml

plist = plistlib.readPlist('your.plist')
plist['key'] = 0
plistlib.writePlist('your.plist')

# convert plist from xml to binary

使用^{}可以满足所有plist文件的需要。不需要转换。在

相关问题 更多 >