以红宝石找到货币汇率
答案 0 :(得分:1)
尝试类似的操作(复制这3个文件)
exchange.rb
require 'json'
module Exchange
@rates = JSON.parse(File.read('rates.json'))
def self.rate(date, from_currency, to_currency)
rates = @rates[date] # get rates of given day
from_to_eur = 1.0 / rates[from_currency] # convert to EUR
from_to_eur * rates[to_currency] # convert to target currency
end
end
test_script.rb
require_relative 'exchange.rb'
require 'date'
target_date = Date.new(2018,12,11).to_s
puts "USD to GBP: #{Exchange.rate(target_date, 'USD', 'GBP')}"
puts "USD to JPY: #{Exchange.rate(target_date, 'PLN', 'CHF')}"
puts "DKK to CAD: #{Exchange.rate(target_date, 'PLN', 'CHF')}"
rates.json
{
"2018-12-11": {
"USD": 1.1379,
"JPY": 128.75,
"BGN": 1.9558,
"CZK": 25.845,
"DKK": 7.4641,
"GBP": 0.90228,
"HUF": 323.4,
"PLN": 4.2983,
"RON": 4.6557,
"SEK": 10.297,
"CHF": 1.1248,
"ISK": 140.2,
"NOK": 9.7038,
"HRK": 7.3943,
"RUB": 75.5225,
"TRY": 6.1295,
"AUD": 1.5778,
"BRL": 4.4417,
"CAD": 1.5239,
"CNY": 7.8498,
"HKD": 8.8934,
"IDR": 16625.0,
"ILS": 4.2691,
"INR": 81.8215,
"KRW": 1284.17,
"MXN": 23.0209,
"MYR": 4.7615,
"NZD": 1.6526,
"PHP": 60.009,
"SGD": 1.5617,
"THB": 37.317,
"ZAR": 16.2903
},
"2018-12-10": {
"USD": 1.1425,
"JPY": 128.79,
"BGN": 1.9558,
"CZK": 25.866,
"DKK": 7.4639,
"GBP": 0.90245,
"HUF": 323.15,
"PLN": 4.2921,
"RON": 4.6502,
"SEK": 10.333,
"CHF": 1.1295,
"ISK": 140.0,
"NOK": 9.6885,
"HRK": 7.387,
"RUB": 75.8985,
"TRY": 6.0499,
"AUD": 1.5842,
"BRL": 4.4524,
"CAD": 1.5218,
"CNY": 7.8967,
"HKD": 8.9283,
"IDR": 16671.36,
"ILS": 4.2642,
"INR": 82.7284,
"KRW": 1287.42,
"MXN": 23.132,
"MYR": 4.7671,
"NZD": 1.6581,
"PHP": 60.367,
"SGD": 1.5667,
"THB": 37.525,
"ZAR": 16.3463
},
"2018-12-07": {
"USD": 1.1371,
"JPY": 128.36,
"BGN": 1.9558,
"CZK": 25.851,
"DKK": 7.4641,
"GBP": 0.89085,
"HUF": 323.5,
"PLN": 4.2895,
"RON": 4.6485,
"SEK": 10.2665,
"CHF": 1.1299,
"ISK": 139.5,
"NOK": 9.697,
"HRK": 7.3913,
"RUB": 75.885,
"TRY": 6.0619,
"AUD": 1.5766,
"BRL": 4.4358,
"CAD": 1.523,
"CNY": 7.8244,
"HKD": 8.8866,
"IDR": 16454.01,
"ILS": 4.2545,
"INR": 80.509,
"KRW": 1278.67,
"MXN": 23.1435,
"MYR": 4.7372,
"NZD": 1.6558,
"PHP": 60.059,
"SGD": 1.5583,
"THB": 37.359,
"ZAR": 16.0673
}
}
运行test_script.rb
时,您应该能够看到汇率。我希望这对您有用,但是请注意,这仅涵盖JSON情况。让我知道它是否有效,并且我必须同意@pascal_betz,将来请提供更多信息,您已尝试过什么,实际失败了或具体失败了。但是欢迎来到stackoverflow,一定要继续发布,我知道一开始它可能会令人气disc! ;)