Научитесь программировать на Ruby Глава 11.7 - PullRequest
0 голосов
/ 16 ноября 2018

Я делаю книгу Криса Пайна «Учимся программировать 2-е издание» для рубина. Я не могу воспроизвести его пример с гл. 11.7. Был бы очень признателен за любой вклад. Спасибо! По какой-то причине, когда я запускаю эту программу, она помещает следующее:

Как вы хотите назвать корневое имя для этих файлов?

testtext

Скачивание 0 файлов: Готово!

Файлы не перемещаются. Кроме того, структура папок выглядит следующим образом

+-- _6write
|   +-- copyfiles
|   |   +-- New Text Document.txt
|   |   +-- New Text Document - Copy.txt
|   |   +-- New Text Document - Copy (2).txt
|   +-- pastefiles

Ниже приведен код:

#Ch 11.7 Example

Dir.chdir 'C:\Users\user\Desktop\RoR\Ruby Projects\_6write\pastefiles' 
pic_names = Dir['C:\Users\user\Desktop\RoR\Ruby 
Projects\_6write\copyfiles\*.{txt, TXT}']

puts "What do you want to call the root name for these files?" batch_name = 
gets.chomp puts print "Downloading #{pic_names.length} files: "

pic_number = 1

pic_names.each do |name|   print '.'

  new_name = if pic_number <10
    "batch_name#{pic_number}.jpg"   else
    "batch_name#{pic_number}.jpg"   end   File.rename name, new_name

  pic_number = pic_number + 1 end

puts

puts "Done!"

1 Ответ

0 голосов
/ 19 ноября 2018

Вместо

Dir.chdir 'C: \ Users \ user \ Desktop \ RoR \ Ruby Projects_6write \ pastefiles' pic_names = Dir ['C: \ Users \ пользователь \ Desktop \ RoR \ Ruby']

это должно быть

Dir.chdir 'C: / Users / dlma1 / Desktop / RoR / Ruby Projects / _6write / pastefiles' pic_names = Dir ['C: / Users / dlma1 /Desktop / RoR / Ruby Projects / _6write / copyfiles / *. {Txt, TXT} ']

Поэтому / необходимо использовать вместо \ при использовании Dir в модуле yaml.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...