我有一堆XML文档的目录,并希望将它们放入一个容器中。 换句话说,我需要做的是这样的:如何将多个文档放入Berkeley-DB XML容器中?
dbxml> putDocument tests/*.xml
我已经写了一个GUI程序要做到这一点,但主机服务器没有安装X-windows的,所以必须在命令行。
我有一堆XML文档的目录,并希望将它们放入一个容器中。 换句话说,我需要做的是这样的:如何将多个文档放入Berkeley-DB XML容器中?
dbxml> putDocument tests/*.xml
我已经写了一个GUI程序要做到这一点,但主机服务器没有安装X-windows的,所以必须在命令行。
使用列出文件并将所有内容放入数据库的脚本结束。
您可以使用shell脚本将XML文件的列表写入另一个文件,然后使用-f选项调用dbxml_load_container。
在将某些XML文档重新加载到我当前的应用程序数据库中时,我做了类似的事情。如果所有文件共享一个通用的命名约定,它会有所帮助。在Python中,你将可以使用下面的脚本添加到doc001.xml doc009.xml:
from bsddb3.db import *
from dbxml import *
#Load source files 001 - 009
sourceDir = 'C:/directory-containing-xml-docs'
fileRange = range(1,10)
for x in fileRange:
mycontainer = mymgr.openContainer("myDB.dbxml")
xmlucontext = mymgr.createUpdateContext()
xmlinput = mymgr.createLocalFileInputStream(sourceDir + "doc00" + str(x) + ".xml")
mycontainer.putDocument("doc00" + str(x) + ".xml", xmlinput, xmlucontext)
print 'Added: ' + str(x)
del mycontainer
print '1 - 9 Added'
希望帮助
您可以发布此脚本? – Finn 2012-02-03 18:20:41