Çıktıda yeni satır nasıl yapılır


165

\nÇıktılarımda gerçekten nasıl çalışabilirim? Şu anda hepsini 1 uzun blokta yazıyor. Herhangi bir yardım için teşekkürler

Dir.chdir 'C:/Users/name/Music'
music = Dir['C:/Users/name/Music/*.{mp3, MP3}']
puts 'what would you like to call the playlist?'
@new = ''
playlist_name = gets.chomp + '.m3u'

music.each do |z|
  @new += z + '\n'
end

File.open playlist_name, 'w' do |f|
  f.write @new
end

Yanıtlar:


335

Yerine "\n"kullanın'\n'


11
Cevabınız için teşekkürler, aptal gibi görünmemi sağlıyor ama en azından şu anda biliyorum
babyrats

77
kendinize bu kadar zor olma: öğrenmenin tek yolu soru sormaktır.
glenn jackman

14
@babyrats - u tek değil :)
Ninad

6
Hem Ruby hem de PHP'nin tek tırnaklı dizelerde kaçış dizilerini genişletmediği anlaşılıyor.
kjagiello

2
"\ n" yeni satır, '\ n \ tam anlamıyla ters eğik çizgi ve n.
mahemoff

12

Tüm bunları File.open bloğunda yapabilirsiniz:

Dir.chdir 'C:/Users/name/Music'
music = Dir['C:/Users/name/Music/*.{mp3, MP3}']
puts 'what would you like to call the playlist?'
playlist_name = gets.chomp + '.m3u'

File.open playlist_name, 'w' do |f|
  music.each do |z|
    f.puts z
  end
end

1
Bundan uzaklaşmak için ilginç ve yararlı bir şey putsbir dize ve bir "otomatik" sondaki satır sonu çıktılar olduğunu tahmin ; bu kod eklemek daha kullanışlı.
Carl Smotricz

Bunun için +1 ve bir dosyayı işlemenin güzel, otomatik kapanış, deyimsel yolu.
Carl Smotricz

6

Deneyimimi paylaşmak isterim \n
ki, "\ n"

puts "\n\n" // to provide 2 new lines

Ama değil

p "\n\n"

Ayrıca koyar '\n\n'
Çalışmaz.

Umut sizin için çalışacak !!


5

Aslında bloğa bile ihtiyacınız yok:

  Dir.chdir 'C:/Users/name/Music'
  music = Dir['C:/Users/name/Music/*.{mp3, MP3}']
  puts 'what would you like to call the playlist?'
  playlist_name = gets.chomp + '.m3u'

  File.open(playlist_name, 'w').puts(music)
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.