【问题标题】:Read and write specific cells of an iWork Numbers file stored in iCloud读取和写入存储在 iCloud 中的 iWork Numbers 文件的特定单元格
【发布时间】:2014-01-22 09:24:41
【问题描述】:

这是场景,我有三个 iWork Numbers 文件,使用最新的 Mavericks 版本创建并保存在 iCloud 上:

timesheet_2014.numbers 我收集所有工作时间的地方 invoice_model.numbers 我发票的型号 invoice_register.numbers 用于跟踪我所有到期和已付款的发票

在月底,我从时间表中获取数据,手动准备发票,并将其参考存储在寄存器中。

我正在手动完成所有这些操作,并且我正在尝试使整个过程自动化。 目前我不想写一个完整的程序,但我的首选是准备一些具有这种行为的objective-c脚本:

  1. 从时间表中读取给定的表格和单元格
  2. 加载模型,复制它并用给定值填充相关单元格
  3. 查找登记簿以获取最新的累进发票编号并将 +1 分配给当前发票
  4. 以 PDF 格式保存发票(Google Drive 或 Dropbox 存储)并将参考信息(仅发票编号、到期日、ecc..)存储在寄存器中

介绍完之后,问题如下:

  1. objective-c 有一套特定的 API 来处理 iWork 文件吗?
  2. 如何从本地 iCloud 存储加载 Numbers 文件?
  3. 我知道答案是否定的,但我要问的是,以防 iOS 7 发生了一些变化:脚本通常会从 Mac 启动,但我是否有机会从带有iOS 应用程序?该应用需要能够访问 iCloud 上的文件。
  4. 是否有有效的替代 Objective-c 的方法?最好是 Mavericks 内置的东西。

【问题讨论】:

    标签: objective-c icloud iwork


    【解决方案1】:

    objective-c 有一套特定的 API 来处理 iWork 文件吗?

    没有。文件格式没有记录,也没有 API。

    如何从本地 iCloud 存储加载 Numbers 文件?

    如果您将文稿从 Numbers 存储到 iCloud,您只能从 Numbers 访问它。应用程序只能访问自己在 iCloud 中的文件。它不像文件夹。如果您的应用未将文件放入 iCloud,则您的应用无法从 iCloud 读取文件。

    如果您想同步文档,您可以考虑使用 Dropbox。它提供了一种更像 Mac 的文件夹/文件方法,您将能够访问由其他应用程序创建的文档。

    我知道答案是否定的,但如果 iOS 7 发生了一些变化,我会问这个问题:脚本通常会从 Mac 启动,但我是否有机会从带有iOS 应用程序?该应用需要能够访问 iCloud 上的文件。

    可以编写与相应的 Mac 应用程序共享 iCloud 数据的 iOS 应用程序。不过这并不重要,因为您无法访问 Numbers 在 iCloud 中保存的文件。

    是否有有效的替代 Objective-c 的方法?最好是 Mavericks 内置的东西。

    如果您使用的是旧版 Numbers(Numbers 2.3,iWork '09 的一部分),您可能会在使用 Applescript 时获得一些运气。当前版本的 Numbers (Numbers 3.0.1) 不可编写脚本。

    【讨论】:

    • 就像我说的,您可能需要考虑使用 Dropbox。 Apple 的 iCloud 方法是应用程序可以跨多个设备同步数据,而不是 iCloud 是一种通用同步机制。
    猜你喜欢
    • 2010-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多