- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
假设我有一个名为 document.doc
的标准 Word 文档。在本文档中,有指向某些不再存在的服务器的超链接。我希望用合适的链接替换链接,因为我必须对很多文件执行此操作,所以我希望有一种方法可以自动执行此操作。
如何从 Microsoft Office 外部将超链接更改为其他内容?最好在 Linux/Unix 环境中。
我注意到文档中所有的超链接都是明文存储的,可以被查看
字符串文档.doc | grep -i "超链接"
因此,我尝试了一种简单的 sed
方法来就地编辑:
sed -ir 's/www.badlink.com/www.goodlink.com/' document.doc
然后我通过再次调用 strings
确认超链接已更改。但是,在使用 sed
后,MS Word 无法打开该文档——它表示文件已损坏。
那么,有没有什么简单的方法可以通过 Linux/Unix 工具编辑 Microsoft Word 文档中的链接?在最坏的情况下,我想这个任务可以用一些 Microsoft Office 宏来完成。如果这是唯一的可能性,那也没关系。
最佳答案
DOC 不是 RTF,您无法使用简单的文本编辑器对其进行编辑。
您可以轻松地使用 VBA 宏\使用 Interop 库这个词的其他一些语言 - 做这个简单的搜索和替换,更多信息检查
https://msdn.microsoft.com/en-us/library/f1f367bx.aspx
现在这取决于您的需要,如果您需要在服务器端执行此操作,您始终可以使用 OpenOffice 或更好的 Aspose(商业许可的第 3 部分库)来执行这些操作(非常昂贵但物有所值 - 谷歌他们)
如果您需要在客户端执行此操作,并且(假设客户端使用 word,意味着它们正在运行 Windows)您可以使用 VBA macro\Office 插件来执行此操作。
关于linux - 从 Microsoft Word 外部替换 Word 文档中的超链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42418972/
我是一名优秀的程序员,十分优秀!