-1
我需要在現有的xml文件中添加一行。我需要添加一個新行。 現有的XML文件具有線在python中匹配一行
<serviceInstance name="idstore.ldap" provider="idstore.ldap.provider">
<property name="idstore.config.provider" value="oracle.security.jps.wls.internal.idstore.WlsLdapIdStoreConfigProvider"/>
我需要這兩行後添加一個額外的行。
所以我寫了一個代碼,它打開源文件並逐行復制到新的目標文件。 在for循環,我把它拷貝條件
for line in source:
if line.strip().startswith('<property name=\"idstore.config.provider\"'):
print 1
destination.write(line)
destination.write('<property name=\"virtualize\" value=\"false\"/>')#
continue
else:
print 2
destination.write(line)
continue
但如果條件不匹配的線和狀況越來越錯過。 任何人都可以指出如何解決問題。在開始導致錯誤的任何空格? 我是新來的python,請問如果它是一個微不足道的問題。
如果它是XML文件,請使用XML解析器。從長遠來看,你會爲你自己一個忙。 – NPE 2013-03-20 09:22:57
是因爲行前的空白嗎?嘗試:'line.strip()。startswith(...)' – freakish 2013-03-20 09:25:40
@freakish我添加了strip()並刪除了r。它現在仍在工作。 正則表達式會有幫助嗎? – kairav 2013-03-20 09:37:29