Size: a a a

2019 April 19

RV

Roman V in Random Ruby Chat
источник

VS

Viacheslav Soldatov in Random Ruby Chat
Добрый вечер, Роман
источник

U

Uroboros in Random Ruby Chat
Uroboros
Друзья, есть файл со строчками, в конце каждой строчки указание месяца и дня, из которых я создал массивы.  Нужно раскинуть эти строчки по трём файлам в зависимости от содержащегося в них дня и месяца. Вот что я написал:

#создаём файл №1
nachalo = 'C:/users/n/ruby/nachalo.txt'
#создаём файл №2
seredina = 'C:/users/n/ruby/middle.txt'
#создаём файл №3
konec = 'C:/users/n/ruby/conec.txt'

{:nachalo=> ["06-14", "06-15", "06-16", "06-17", "06-18", "06-19"]
{:seredina=>  ["07-07", "07-08"]
{:konec=> ["07-09", "07-10"]

logs = 'C:/users/n/ruby/testlogs.txt'
File.open(logs).each do |line|
if line.include? {:nachalo}
File.open(nachalo, 'w') do |f|
if line.include? {:seredina}
File.open(seredina, 'w') do |f|
if line.include? {:konec}
File.open(konec, 'w') do |f|
end


Как заставить это работать, подскажите пожалуйста.
строки однотипные вида:
пежо автомобиль 07-10
лада седан 06-14

То есть по сути, нужен просто метод, который будет определять, если ли два последние числа из массива в строчке. Если есть — в продакшн.
источник

RV

Roman V in Random Ruby Chat
#создаём файл №1 
nachalo = File.open('C:/users/n/ruby/nachalo.txt', 'a')
#создаём файл №2
seredina = File.open('C:/users/n/ruby/middle.txt', 'a')
#создаём файл №3
konec = File.open('C:/users/n/ruby/conec.txt', 'a')

nachalo_ts = ["06-14", "06-15", "06-16", "06-17", "06-18", "06-19"]
seredina_ts = ["07-07", "07-08"]
konec_ts = ["07-09", "07-10"]

logs = 'C:/users/n/ruby/testlogs.txt'
File.open(logs).each do |line|
 if nachalo_ts.any? { |timestamp| line.include?(timestamp) }
   nachalo.write(line)
 elsif seredina_ts.any? { |timestamp| line.include?(timestamp) }
   seredina.write(line)
 elsif konec_ts.any? { |timestamp| line.include?(timestamp) }
konec.write(line)
 end
end

nachalo.close
seredina.close
konec.close
источник

RV

Roman V in Random Ruby Chat
попробуй
источник

RV

Roman V in Random Ruby Chat
Viacheslav Soldatov
Добрый вечер, Роман
источник

U

Uroboros in Random Ruby Chat
Никак :(
источник

U

Uroboros in Random Ruby Chat
Detect тоже никак.
источник

RV

Roman V in Random Ruby Chat
что именно никак?
источник

U

Uroboros in Random Ruby Chat
Код выполняется, однако конечные файлы остаются без изменений.
источник

RV

Roman V in Random Ruby Chat
так ты код скопируй без ошибок
источник

RV

Roman V in Random Ruby Chat
> File.open(logs).each do |line|
источник

RV

Roman V in Random Ruby Chat
как он у тебя запустился то вообще кстати
источник

U

Uroboros in Random Ruby Chat
Roman V
> File.open(logs).each do |line|
Я поправил, скрин не тот. Но он, увы, не срабатывает.
источник

RV

Roman V in Random Ruby Chat
удали файлы, запусти скрипт, файлы появятся?
источник

U

Uroboros in Random Ruby Chat
Roman V
удали файлы, запусти скрипт, файлы появятся?
Не появляются, при повторном создании не заполняются.
источник

RV

Roman V in Random Ruby Chat
чет я сомневаюсь что у тебя скрипт без ошибок выполняется
источник

RV

Roman V in Random Ruby Chat
слеши в другую сторону поставь
источник

RV

Roman V in Random Ruby Chat
у тебя же шиндовс походу
источник

🌚D

🌚 Sunny Daiλy 🌝... in Random Ruby Chat
режим a — append создаст файл при отсутствии?
источник