Как я знаю, не удалось ли BigDecimal проанализировать?

Я импортирую данные из csv, я должен бросить некоторые значения в BigDecimal и повысить ошибку, если они не могут быть проанализированы..

От тестирования BigDecimal ("неверный номер") возвращает BigDecimal 0. Это было бы в порядке, но довольно грязное, кроме допустимого значения 0...

Плавание ("неверный номер") действует по-другому и выдает исключение...

Мое текущее решение:

class String
  def to_bd
    begin
      Float(self)
    rescue
      raise "Unable to parse: #{self}"
    end
    BigDecimal(self)
  end
end

Действительно ли я являюсь полностью пропавшим что-то?

7
задан Michael Baldry 7 May 2010 в 13:48
поделиться