onenote 2007笔记本批量转换为onenote 2010/2013/2016



我的客户拥有价值约600gb(合计)的Onenote 2007笔记本电脑。Onenote 2016不允许编辑Onenote 2007格式的笔记本。它需要转换。

MS不提供批处理转换实用程序。微软确实通过用户界面提供了一个笔记本到一个笔记本的转换,这很笨重。有人知道我是否可以使用他们的发布API一次转换一个笔记本吗?

https://msdn.microsoft.com/en-us/library/office/jj680120.aspx#ON14DevRef_Application_Functional(请参阅发布方法)

我尝试了一下。你可以!

可以从Application2 onenote API COM对象使用Publish API方法,方法是打开2007笔记本并将导出格式指定为PublishFormat.pfOneNote(导出为2010+格式)。

有一些限制:

  1. 您只能转换一个节。因此,您的代码必须打开2007笔记本,找到这些部分,然后一次转换一个
  2. 没有页面的节将导致抛出错误代码。因此,在尝试转换之前,请检查部分中是否有页面

因此,考虑到限制,我的转换应用程序将不得不:

  1. 在一个大文件夹中循环浏览笔记本
  2. 打开每个笔记本,遍历每个分区,并将每个非空分区转换为一个新的笔记本文件夹
  3. 打开新的笔记本文件夹,并在其中创建任何丢失的分区
  4. 订购新笔记本中的分区
  5. 保存并关闭两个笔记本
  6. 重复

以下是部分实现:https://github.com/PetePeter/onenoteconverter

最新更新