Как закрыть файлы в The Ruby Gem «Электронная таблица?»

Код ниже работает, поскольку он должен первый раз, когда я запускаю его:

require 'rubygems'
require 'spreadsheet'
book = Spreadsheet.open '/Users/me/myruby/Mywks.xls'
sheet = book.worksheet 0
row = sheet.row(1)
puts row[1]
book.write '/Users/me/myruby/Mywks.xls'

, когда я запускаю его снова, я получаю больше сообщений, таких как:

/Library/Ruby/Gems/1.8/gems/spreadsheet-0.6.5.9/lib/spreadsheet/excel/reader.rb:1149:in `setup': undefined method `read' for false:FalseClass (NoMethodError)
    from /Library/Ruby/Gems/1.8/gems/spreadsheet-0.6.5.9/lib/spreadsheet/excel/reader.rb:121:in `read'

Это предложит мне, есть проблема с либо: 1. Закрытие электронной таблицы Excel или 2. Список обратно к той же электронной таблице, которую я открыл.

  1. Нет ничего в документации электронной таблицы Ruby Gem о закрытии электронных таблиц. Примеры заканчиваются в заявлении «Book.write», как указано выше, во всяком случае. Мой поиск здесь и в другом месте ничего не появился, не закрывая файл XLS в электронном месте.
  2. Документация электронной таблицы предложит, что вы можете написать обратно в тот же файл, но предлагает, может быть, вы не должны. Это проблема здесь? Если так, я пишу во временных недели, а затем переименовать его?
5
задан Frank Schmitt 10 June 2014 в 09:05
поделиться