如何修复Berkeley DB文件中不正确的XML标记

时间:2012-05-14 21:44:48

标签: python berkeley-db

我有一个Berkeley DB文件,其中包含一些损坏的记录中的数据。

记录包含xml且xml标记不正确。

其中一条记录包含:

"<modifications></modificatio"

如何编辑此记录以在

中解决此问题
"<modifications></modifications>"

1 个答案:

答案 0 :(得分:1)

Berkeley数据库文件是一个二进制文件,其中包含应用程序放置在那里的数据库记录。

您通常会使用您用于生成文件的任何工具来“编辑”该文件。如果您无法使用,最简单的解决方案可能是使用db_dumpdb_load命令。

db_dump命令将数据库转换为文本格式,如下所示:

$ db_dump my_broken_database
format=print
type=hash
h_nelem=77
db_pagesize=4096
HEADER=END
 key1\00
 this is a value\00
 key2\00
 this is another value\00
DATA=END

您可以将其转储到文件中......

$ db_dump my_broken_database > data.txt

...并使用您喜欢的文本编辑器进行编辑。完成编辑后,将其提供给db_load以重新生成数据库:

$ db_load my_fixed_database < data.txt