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


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.