2013-07-25 21 views
9

Buraya gerçekten belirgin bir şey eksik düşünüyorum, ama herkes onun 'wb' bu durumda, CSV.open yöntemi için koyduğu ikinci argüman nedir, burada koyun diğer harf (ler) gördük ancak Kimse ne yaptığını açıklamıyor. Bu ne işe yarıyor?Ruby'de CSV.open() için ikinci parametre/argüman nedir?

CSV.open("path/to/file.csv", "wb") do |csv| 
    csv << ["row", "of", "CSV", "data"] 
    csv << ["another", "row"] 
    # ... 
end 

Ruby doktoru herhangi bir açıklama yapmıyor gibi görünüyor. http://www.ruby-doc.org/stdlib-2.0/libdoc/csv/rdoc/CSV.html

teşekkürler!

+0

http://apidock.com/ruby/IO/open/class –

cevap

18

:

"r" Salt okunur dosya (varsayılan mod) başında başlar

yakut dosya modları hakkında daha fazla bilgi için bu yanıta bakın.

"r +" Oku-yazma, dosyasının başında başlar.

"w" Yaz okunur, sıfır uzunlukta dosyayı mevcut keser veya yazma için yeni bir dosya oluşturur. Oku-yazma

"w +", sıfır uzunlukta mevcut dosyayı keser veya okuma ve yazma için yeni bir dosya oluşturur.

"a" Yalnızca dosya varsa, dosyanın sonunda başlar, aksi halde yazma için yeni bir dosya oluşturur.

"a +" Okuma-yazma, dosya varsa dosya sonunda başlar, aksi halde okuma ve yazı için yeni bir dosya oluşturur.

+1

Bağlantıyı takip etmek için çok tembel olan herkes için: b 'soneki" ikili "dosya modu anlamına gelir (" Windows'da EOL <-> CRLF dönüşümünü bastırır ". Ve açıkça belirtilmemişse, ASCII-8BIT'e harici kodlamayı ayarlar. "); 't' soneki "metin" dosya modu anlamına gelir – Alec

İlgili konular