नीचे कोड के रूप में यह पहली बार मैं इसे चलाने चाहिए काम करता है:रूबी मणि "स्प्रेडशीट" में फ़ाइलों को कैसे बंद करें?
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. एक्सेल स्प्रैडशीट का समापन या 2. उसी स्प्रैडशीट पर वापस लिखना मैंने खोला।
- स्प्रेडशीट बंद करने के बारे में रूबी मणि स्प्रेडशीट दस्तावेज़ में कुछ भी नहीं है। उपरोक्त के रूप में "book.write" कथन में उदाहरण समाप्त होते हैं, यदि कुछ भी हो। मेरी खोज यहां और कहीं और स्प्रेडशीट में xls फ़ाइल को बंद करने के लिए कुछ भी नहीं बदल गया।
- स्प्रेडशीट दस्तावेज सुझाव देते हैं कि आप एक ही फाइल पर वापस लिख सकते हैं लेकिन सुझाव देते हैं कि आपको नहीं करना चाहिए। क्या यह समस्या यहाँ है? यदि ऐसा है तो क्या मैं एक अस्थायी wks को लिखता हूं और फिर इसका नाम बदलता हूं?
कौन सी लाइन अपवाद को ट्रिगर करती है? –
@AndrewGrimm जाहिर है यह लाइन 3 है, "book = spreadsheet.open" शुरू करें। – Roy
मैंने नीचे दिए गए कोड को जोड़ने का प्रयास किया लेकिन यह काम नहीं किया। उपरोक्त के समान सटीक परिणाम। afile = file.open ("/ उपयोगकर्ता/royclymer/myruby/साप्ताहिक Total.xls") afile.close मैं इस टिप्पणी में उपरोक्त कोड को प्रारूपित करने का तरीका नहीं समझ सकता। – Roy