您好我有一个很长的xml文件,我需要将它拆分成几个(大约367个)小文件。你知道我可以使用任何程序来按行分割这个文件吗?
...
>0.00</P_60
></PozycjeSzczegolowe
><Pouczenie
>Za uchybienie przewidziana w Kodeksie karnym skarbowym.</Pouczenie
></Deklaracja>
<!--END-->
<?xml version="1.0" encoding="UTF-8"?>
...
我需要开始提供新文件
<?xml version="1.0" encoding="UTF-8"?>
并结束
<!--END-->
(或我在评论中使用的任何其他短语)
答案 0 :(得分:0)
逐行迭代输入文件,并且每次出现<!--END-->
时都会创建新的输出文件。
在Python3中:
#!/usr/bin/env python3
sep = "<!--END-->"
i = 0
outfile = open( "output"+str(i)+".xml", "w" )
for aLine in open( "input.xml", "r" ):
if aLine.strip() == sep:
outfile.close()
i += 1
outfile = open( "output"+str(i)+".xml", "w" )
else:
print( aLine, file=outfile, end="" )
答案 1 :(得分:0)
迭代bigfile.xml
并在&#34; <?xml ...
&#34;时开始新文件出现
csplit --prefix="output" -n 3 bigfile.xml '/^<?xml/' "{*}"
如果bigfile.xml
以&#34; <?xml ...
&#34;开头,您可以删除output000
(空文件)