我有一堆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