Извлечь данные из нескольких массивов в CSV-файл для рубина - PullRequest
0 голосов
/ 31 мая 2018

Как мне разобрать файл csv, чтобы проверить, существует ли значение во всем массиве в файле csv?А после просто вытащить массив, содержащий значение и отобразить его?

     require 'csv'

########
## Ask for Serial number
########
serial_number = ask("Product serial number?", true)
serial_number = serial_number.to_s
serial_number = serial_number.upcase
stamp_date= Time.now
old = Time.now.to_i

###################
## CHECK if SN exist in Serial List
###################

CSV.foreach('procedures/Serial.csv') do |row|
    check_serial = row[0]

1 Ответ

0 голосов
/ 01 июня 2018

Допустим, у вас есть этот CSV-файл:

# starships.csv
serial_number,ship_name,speed
NCC-1701,USS Enterprise,Warp 8
NCC-74656,USS Voyager,Warp 9.975

Например, вы можете посмотреть серийный номер следующим образом:

require 'csv'

CSV.foreach('starships.csv', headers: true) do |row|
  p row['ship_name'] if row['serial_number'] == "NCC-74656"
  # whatever code
end

#=>"USS Voyager"

Я не знаю первую часть вашегокод, но второй отсутствует end цикла итерации.Если вы установите headers: true, первая строка пропускается как данные и используется для построения ключей доступа, что позволяет использовать, например, row['ship_name'] вместо row[0].

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