başka dosyaya yazma:Kolay soru: Dosyayı okuyun bunu tersine çevirmek ve ben Ruby
o = File.new("ouput.txt", "rw+")
File.new("my_file.txt").lines.reverse_each { |line|
????? line
}
o.close
Bildiğimi o
başka dosyaya yazma:Kolay soru: Dosyayı okuyun bunu tersine çevirmek ve ben Ruby
o = File.new("ouput.txt", "rw+")
File.new("my_file.txt").lines.reverse_each { |line|
????? line
}
o.close
Bildiğimi o
puts
, diziler anlar. Bu tür şeyler için Elif gibi bir mücevher kullanmayı düşünün.
Bunu düşünmedik bile, güzel. – RyanScottLewis
Başka bir dosyaya yazmak istemiyorum. Sadece konsolda yazdırmak istiyorum. Nasıl yaparım ? – stack1
dosya çıkışa yazmak için kullanmak hangi yöntemi bilmiyorum kolaydı, tam olarak anlamadığım şey neden here belgelenmemiş?
o = File.new("ouput.txt", "w+")
File.new("my_file.txt").lines.reverse_each { |line|
o.puts line
}
o.close
out.puts veya o.puts? –
Orada belgelenmiyor çünkü “koyar”, “File” sınıfının bir üyesi değil. Aslında 'IO' sınıfının bir üyesi ve 'File' sınıfı 'IO'nun bir alt sınıfıdır. Bunun için belgeler şu adreste: http://ruby-doc.org/core/classes/IO.html – bta
Sen
new_text = File.readlines('my_file').reverse.join
File.open('my_file', 'w+') { |file| file.write(new_text) }
Kontrol dışarı this documentation neyi w+
yollar düşünsünler ... isteyecek gibi bir şey daha yapmak konum. Büyük dosyalar için
File.open("f2.txt","w") {|o| o.puts File.readlines("f1.txt").reverse}
readlines kullanmaktan kaçının o verimsiz/gerçekten yavaş olacak gibi: Eğer bu basitleştirmek böylece
Meta etiketi kullanmamalısınız. Şuna bakın: http://blog.stackoverflow.com/2010/08/the-death-of-meta-tags/ – HoLyVieR