我们有很多带appr的xml文件。 500000行,我们将其用于迁移。现在一些已经加载的对象出错了,我必须创建一个额外的xml文件。我需要搜索Alias>XXX</Alias>
之间的一个值,并且需要将<File> to </File>
中的元素复制到新的xml文件中。我需要在100个xml文件中搜索800个Alias条目。
我不是程序员,并试图用我的工具解决它。
示例xml
<Root>
<File>
<OriginalFile>
<TheDocFile>B-ELD1-0531-HS5E-20801KT7010-C.tif</TheDocFile>
<TheDocFile>B-ELD1-0531-HS5E-20801KT7010-C.dwg</TheDocFile>
</OriginalFile>
<AgfaTitelhoek>
<Alias>ELD1-0531-HS5E-20801KT7010</Alias>
<Basiskalk>STXX520</Basiskalk>
<Uitvoerder></Uitvoerder>
<Tek.Naam>QualiTek</Tek.Naam>
<Tek.Tel></Tek.Tel>
<Tek.Datum>20170505</Tek.Datum>
<Nag.Naam>DE WAELE D.</Nag.Naam>
<Nag.Tel>7823</Nag.Tel>
<Nag.Datum>20180416</Nag.Datum>
<Goedk.Naam></Goedk.Naam>
<Goedk.Tel></Goedk.Tel>
<Goedk.Datum></Goedk.Datum>
<Titellijn1>BEVEILIGINGSLIJST</Titellijn1>
<Titellijn2>VERDEELBORD 20.801</Titellijn2>
<VestGebouw>0531</VestGebouw>
<Vestiging>05</Vestiging>
<Gebouw>31</Gebouw>
<PRCCode>ELD1</PRCCode>
<PRECode>HS5E</PRECode>
<FieGrpCode>----</FieGrpCode>
<BwdCode>----</BwdCode>
<Verdieping>20</Verdieping>
<ZLS>L29</ZLS>
<PVB>801</PVB>
<Soort>KT</Soort>
<Volgnummer>7010</Volgnummer>
<Bordnummer></Bordnummer>
<Veldnummer></Veldnummer>
<Plannummer></Plannummer>
<Uitgave>C</Uitgave>
<Lastenboeknr></Lastenboeknr>
<Ontstaan></Ontstaan>
<Landcode>BE</Landcode>
<StatusPlan>As Built</StatusPlan>
<Vakgebied>X</Vakgebied>
<Kaft></Kaft>
<UitgelAan></UitgelAan>
<PageState>GeRegistreerd</PageState>
<ReservedBy>*</ReservedBy>
<KBL>B</KBL>
<PGName>B-ELD1-0531-HS5E-20801KT7010</PGName>
<PRName>B-ELD1-0531-HS5E-20801KT7010-C</PRName>
</AgfaTitelhoek>
</File>
<File>
<OriginalFile>
<TheDocFile>B-EMG1-0531-M037-20145KT2001-O.tif</TheDocFile>
<TheDocFile>B-EMG1-0531-M037-20145KT2001-O.dwg</TheDocFile>
</OriginalFile>
<AgfaTitelhoek>
<Alias>EMG1-0531-M037-20145KT2001</Alias>
<Basiskalk>STXX660</Basiskalk>
<Uitvoerder></Uitvoerder>
<Tek.Naam>QualiTek</Tek.Naam>
<Tek.Tel></Tek.Tel>
<Tek.Datum>19990823</Tek.Datum>
<Nag.Naam>DE WAELE D.</Nag.Naam>
<Nag.Tel>7823</Nag.Tel>
<Nag.Datum>20180416</Nag.Datum>
<Goedk.Naam></Goedk.Naam>
<Goedk.Tel></Goedk.Tel>
<Goedk.Datum></Goedk.Datum>
<Titellijn1>VOORAANZICHT</Titellijn1>
<Titellijn2>SCHAKELBORD 20.145</Titellijn2>
<VestGebouw>0531</VestGebouw>
<Vestiging>05</Vestiging>
<Gebouw>31</Gebouw>
<PRCCode>EMG1</PRCCode>
<PRECode>M037</PRECode>
<FieGrpCode>----</FieGrpCode>
<BwdCode>----</BwdCode>
<Verdieping>20</Verdieping>
<ZLS>---</ZLS>
<PVB>145</PVB>
<Soort>KT</Soort>
<Volgnummer>2001</Volgnummer>
<Bordnummer></Bordnummer>
<Veldnummer></Veldnummer>
<Plannummer></Plannummer>
<Uitgave>O</Uitgave>
<Lastenboeknr></Lastenboeknr>
<Ontstaan></Ontstaan>
<Landcode>BE</Landcode>
<StatusPlan>As Built</StatusPlan>
<Vakgebied>X</Vakgebied>
<Kaft>M037.B.03</Kaft>
<UitgelAan></UitgelAan>
<PageState>GeRegistreerd</PageState>
<ReservedBy>*</ReservedBy>
<KBL>B</KBL>
<PGName>B-EMG1-0531-M037-20145KT2001</PGName>
<PRName>B-EMG1-0531-M037-20145KT2001-O</PRName>
</AgfaTitelhoek>
</File>
</Root>
在这种情况下,我需要搜索ELD1-0531-HS5E-20801KT7010并在<File> to /File>
之间进行全部复制。
我知道所有800个别名号码。我无法运行该代码800次。
搜索字符串是这样的
如果您查看<TheDocFile>B-EMG1-0531-M037-20145KT2001-O.tif</TheDocFile>
还涉及版本控制。这里我们有O(字母序列)。
我没有每个数字后面有多少版本的信息,因此必须在xml中进行排序。
如果可以将800个别名以某种方式放在txt文件中作为代码输入,那将是很好的。
来源: -一个文件夹中有很多xml文件 -大约有800行作为搜索条件的TXT文件
搜索条件:
-搜索<Alias>XXX</Alias>
-如果找到搜索条件,请复制<File> to /File>
结果应为
-包含所有搜索结果的XML文件-<File> to /File>
也许您还有排序的解决方案,应该使用字段<TheDocFile>B-EMG1-0531-M037-20145KT2001-O.tif</TheDocFile>
进行排序。这里有O版本。
希望这并不困难。 提前谢谢。
如果您需要更多信息,请随时询问。