将文档从本地文件系统加载到Office在线

时间:2016-10-06 08:19:00

标签: office365 office-addins office-js office365-apps office-app

我想直接从Word中的本地文件系统加载/保存文件(不将其上传到onedrive)。由于这不是默认功能的一部分,我试图确定是否可以使用插件。

加载部分:

Document对象可以访问body loadsave方法但是文档不清楚(对我来说)加载:Fills the proxy object created in JavaScript layer with property and object values specified in the parameter.

似乎有insertFileFromBase64insertOoxml等选项,但不清楚这些选项是仅在(Windows)桌面版本还是在线版本。请参阅this问题

保存部分:

这似乎更容易,因为已经有Download功能来获取文档的副本。

不是寻找完整的解决方案,只是“它是否可能”,也许是指向使用哪种方法的一些指示。

1 个答案:

答案 0 :(得分:1)

我的回答可能是我做了很多假设,请纠正我,如果我错了,但我认为你要做的是一个WORD加载项(任务窗格加载项),它暴露了以下功能:

  1. 将当前文档上传到OneDrive for Business(基本上是您所呼叫的" Office Online"或其他任何云存储库。
  2. 连接到OneDrive或任何云存储库并打开,使用户可以选择单词文件并在当前文档或新文档上打开它。
  3. 如果这两个假设是正确的,我认为您实际上可以构建具有此类功能的加载项。顺便说一句,在Word体验中,您实际上可以从OneDrive保存和加载Word文件,因此我不确定我理解您的意思" 这不是默认功能的一部分&# 34; 。

    无论如何,这是你可以用API做的事情:

    1. 您可以获取当前文件,docx,pdf或txt 等价物,为此你需要使用getFileAsync方法。这个 method为您提供编码为base64的文件,然后您可以上传 它在任何你需要的地方。如果需要,您也可以切片文件。这里 is a good example on how to use the API
    2. 在当前文档中打开文件。为此,有效地,您需要使用document.body.insertFileFromBase64方法。此方法适用于Word for Windows,Online,Mac和iOS。查看示例here
      1. 最后有一个PREVIEW API,您可以尝试在不同的窗口中实际打开文档。检查out the exercise #8 on this lab。使用createDocument功能。 (请注意,您需要使用预览API as described here)。
    3. 现在,为了连接到OneDrive并上传或获取文件以及导航文件夹结构,您需要对一个驱动器使用图形API。 Here is a good example关于如何对图表进行身份验证和调用。

      我知道这是一堆信息,但应该让你朝着正确的方向前进。

      谢谢和快乐的编码!