从Microsoft Word外部替换Word文档中的超链接



假设我有一个称为 document.doc的标准文档文档。在此文档中,某些服务器有超链接不再存在。我希望用Aproper One替换该链接,并且由于我必须对许多文件进行此操作,因此我希望有一种自动化的方法。

如何将超链接更改为Microsoft Office外部的其他内容?最好在Linux/Unix环境中。

我注意到文档中的所有超链接都以明文存储,可以通过

查看

strings document.doc | grep -i "hyperlink"

我因此尝试了一种简单的sed方法来编辑:

sed -ir 's/www.badlink.com/www.goodlink.com/' document.doc

i然后确认超链接已通过再次调用strings改变了。但是,使用sed后,该文档无法由MS Word打开 - 它指出文件已损坏。

那么,是否有任何简单的方法可以通过Linux/Unix工具在Microsoft Word文档中编辑链接?在最坏的情况下,我想可以使用一些Microsoft Office宏来完成任务。如果这是唯一的可能性。

也可以。

doc不是RTF,您不能使用简单的文本编辑器编辑。

您可以使用Interop库一词轻松地使用VBA Macro 其他一些语言 - 进行此简单搜索&替换,以获取更多信息检查

https://msdn.microsoft.com/en-us/library/f1f367bx.aspx

现在取决于您的需求,如果您需要在服务器端执行此操作,则可以随时使用OpenOffice或更好的Aspose(商业许可的第三部分库)来完成这些事情(相当昂贵,但值得每一分钱-Google他们)

如果您需要在客户端执行此操作,并且(假设客户端使用Word,则意味着他们正在运行Windows),您可以使用VBA Macro Office Addin进行。

最新更新