У меня есть столбец Excel, содержащий номера деталей. Вот пример
Как вы можете видеть, это может быть много разных типов данных: Float
, Int
и String
. Я читаю файл, используя roo
gem. Проблема в том, что roo
интерпретирует целые ячейки как Float
, добавляя к ним конечный ноль (16431 = > 16431.0). Я хочу обрезать этот конечный ноль. Я не могу использовать to_i
, потому что он будет обрезать все конечные числа ячеек, для которых требуется десятичное число (первая строка в приведенном выше примере), и вырезает все после строки char в строках String
( последняя строка в приведенном выше примере).
В настоящее время у меня есть метод, который проверяет последние два символа ячейки и обрезает их, если они ".0"
def trim(row)
if row[0].to_s[-2..-1] == ".0"
row[0] = row[0].to_s[0..-3]
end
end
Это работает, но он чувствует себя ужасно и взломанно. Каким образом можно получить содержимое файла Excel в структуре данных Ruby?