आउटपुट में न्यूलाइन कैसे करें


165

मैं \nवास्तव में अपने आउटपुट में कैसे काम कर सकता हूं? फिलहाल यह सिर्फ 1 लंबे ब्लॉक में लिखता है। किसी भी मदद के लिए धन्यवाद

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

जवाबों:


335

के "\n"बजाय का उपयोग करें'\n'


11
जवाब के लिए धन्यवाद, मुझे एक मूर्ख की तरह दिखता है लेकिन कम से कम मुझे अब पता है
— 21

77
अपने आप पर इतना कठोर मत बनो: सीखने का एकमात्र तरीका सवाल पूछना है।
— ग्लेन जैकमैन

14
@ बबीरेट्स - यू नॉट वन वन :)
— निनाद

6
ऐसा लगता है कि रूबी और पीएचपी दोनों एकल उद्धृत स्ट्रिंग्स में एस्केप सीक्वेंस का विस्तार नहीं करते हैं।
— kjagiello

2
"\ n" न्यूलाइन है, '\ n' का शाब्दिक रूप से बैकस्लैश और एन है।
— mahemoff

12

आप File.open ब्लॉक में यह सब कर सकते हैं:

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
मुझे लगता है कि इस से दूर करने के लिए एक दिलचस्प और उपयोगी बात यह है कि putsएक स्ट्रिंग और एक "स्वचालित" अनुगामी लाइन ब्रेक को आउटपुट करता है; यह कोड में इसे जोड़ने की तुलना में आसान है।
— कार्ल स्मोत्रिकज

उस के लिए +1 और फ़ाइल को संसाधित करने का अच्छा, स्वतः-समापन, मुहावरेदार तरीका।
— कार्ल स्मोत्रिकज़

6

मैं अपने अनुभव को साझा करना चाहूंगा, \n
मुझे ध्यान आया कि "\ n" इस प्रकार काम करता है-

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

लेकिन नहीं

p "\n\n"

यह भी '\n\n'
काम नहीं करता है।

आशा है कि आप के लिए काम करेंगे !!


5

वास्तव में आपको ब्लॉक की भी आवश्यकता नहीं है:

  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)
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.