DOCX中唯一ID的最佳位置(Open XML WordprocessingDocument)

8 guid openxml

我正在寻找一种方法来识别移动或重命名的DOCX文件.原因很明显,我正在使用Open XML SDK,构建一个超链接检查器.

工作完美,至少可以添加或更新文档中的超链接.

但问题是,如果我将外部文件(source.docx + target.docx重命名为targetB.docx)重命名,则链接会中断.我可以找到断开的链接(只需检查链接文件是否在其给定的位置).

但我想要更多.我希望能够通过搜索目录(docx)中的所有文档并扫描它们是否为"目标"来恢复丢失的链接.最简单的方法应该是存储在文档属性中某处的GUID,如果重命名或编辑文档,则不会更改(校验和不适用).

然后我创建一个单独的链接列表和相应的ID,如果任何文档被重命名,我只是更新链接.我希望这个概念很清楚.

所以有一些基本问题:

  • 是否有"最佳实践"将此"自定义信息"存储在Open XML Document中
  • wordprocessingdocument(DOCX)是否已经拥有Word创建的一些唯一标识符
  • 你会在哪里保存映射(超链接目标的GUID)

我希望这个问题很清楚,如果不是我试着澄清一下,只要发表评论即可.

谢谢,克里斯

dir*_*tly 0

Acrobat/PDF 有类似的东西。查找贝茨编号,该编号用于通过输入唯一的编号来识别文档。

您通常应该将其放置在元数据部分(如果有)中。或者,将自定义部分添加到 docx 文件中以保留映射(当然,保持在规范的范围内)。(我对 docx 格式不太熟悉,所以你会明白这一点。)