2011-11-26 107 views

回答

3

那麼,你期望什麼樣的答案? IO沒有任何類方法,稱爲write。最多有binwrite實例方法#write

因此,無論您使用binwrite(http://rubydoc.info/stdlib/core/1.9.3/IO.binwrite),或者你使用File類和去的

File.open("testfile.txt", "w") { |f| f << "123" } 

全路編輯:顯然有一個IO.write方法從Ruby 1.9.3開始。然而,在1.9或1.8的早期版本中沒有這樣的方法。

+2

謝謝!我正在閱讀1.9.3 ruby​​doc並使用了ruby 1.9.2,它在更新之後現在運行良好。你怎麼看到在哪個版本中引入了一種方法? – cande

+0

該文檔不包含任何線索。唯一的辦法是閱讀新版本的更新日誌,或者那些聚集了「已更改」博客帖子的更新日誌,即使這些日誌可能不完整。 –

+0

@cande apidock.com非常有幫助。它顯示何時添加/更改方法,還允許人們留下有關其使用的評論/提示。對於IO.write它的http://apidock.com/ruby/v1_9_3_125/IO/write/class –

-3

IO沒有「內置」寫入方法。 File.write應該做這個工作

+0

也許如果有'File.write'方法。它再次是'File#write',它就是從'IO'繼承的'IO#write'方法'File' –

0

有一對夫婦的問題,

  1. IO沒有一個類的方法寫,它爲什麼你看到的例外
  2. 如果你想寫入一個文件,你應該使用File類

    File.open(「testfile.txt」,「w」)do | file | file.write(「123」) 結束

我想你可能剛剛開始使用Ruby所以它可能是讀了一本書,其中紅寶石會顯示一些這些基礎的一個好主意。我曾使用David Flanagan和Matz的「The Ruby Programming Language」,但不少人使用Dave Thomas,Chad Fowler和Andy Hunt所說的Pickaxe書籍或「編程Ruby」。

相關問題