Ruby库读取Apple Numbers文档?

时间:2012-05-31 08:00:02

标签: ruby

有几个用于读取Microsoft Excel文件的Ruby开源库,例如roospreadsheet。 Apple Numbers文件怎么样?有什么可用吗?

1 个答案:

答案 0 :(得分:3)

这样的图书馆显然不存在(但是?)。现在一个很好的解决方法是通过applescript自动转换为CSV,然后读取此结果而不是尝试直接读取Numbers文件。但这可能不适合每个人的需要,但对我来说非常适合。

这是Applecript:

# -------------------------------------------------------------------------------
# Command-line tool to convert an iWork '09 Numbers
# document to CSV.
#
# Parameters:
# - input: Numbers input file
# - output: CSV output file
#
# Attik System, Philippe Lang
#
# Creation date: 31 mai 2012
# Modification date: 
# -------------------------------------------------------------------------------
on run argv
    # We retreive the path of the script
    set myPath to (path to me)
    tell application "Finder" to set myFolder to folder of myPath

    # We get the command line parameters
    set input_file to item 1 of argv
    set output_file to item 2 of argv

    # We retreive the extension of the file
    set theInfo to (info for (input_file))
    set extname to name extension of (theInfo)

    # Paths
    set input_file_path to (myFolder as text) & input_file
    set output_file_path to (myFolder as text) & output_file

    if extname is equal to "numbers" then
        tell application "Numbers"
            open input_file_path
            save document 1 as "LSDocumentTypeCSV" in output_file_path
            close every window saving no
        end tell
    end if
end run

像这样使用:

osascript convert_to_csv.scpt input_file.numbers output_file.csv