• 周蓬安.blog的博客—强国博客—人民网 2019-05-10
  • 紫光阁中共中央国家机关工作委员会 2019-05-10
  • 感触名家笔下的端午文化吃香粽原来可以这样文艺 2019-05-09
  • 追梦夺冠游行嘲讽詹皇 百万人面前穿订制T恤羞辱他 2019-04-27
  • 《瘟疫传说》:黑死病恐怖 姐弟在绝望中求生 2019-04-10
  • 陕西国防工业职业技术学院百名大学生志愿者敬老院慰问孤寡老人陕西国防工业职业技术学院百名大学生志愿者敬老院慰问-陕西教育新闻 2019-04-08
  • 西藏拉萨:新家园 新生活 2019-04-08
  • 尊重和保障宗教信仰自由的中国实践 2019-04-06
  • 一敬泯恩仇 俄罗斯队主帅这个动作太暖了 2019-03-20
  • 四大名著剧组首次同台忆往事 经典影视剧如何铸就? 2018-12-07
  • “天眼”凝望 探秘宇宙 2018-12-07
  • 0

    Core Json–JSON和Ruby

    Posted by 撒得一地 on 2016年4月20日 in JSON
    国外稳定加速器推荐    Express | Vypr

    Ruby有许多与JSON相关的库。下面的例子结合使用了Ruby和JSON。

    	require 'json'
    	class Address
    
    	  attr_accessor :line1, :city, :state_or_province,
    	:zip_or_postal_code, :country
    
    	  def initialize(line1='', city='', state_or_province='', 
    	 zip_or_postal_code='', country='')
    	@line1 = line1
    	@city = city
    	@state_or_province = state_or_province
    	@zip_or_postal_code = zip_or_postal_code
    	@country = country
    	  end
    	  def to_json
    	to_hash.to_json
    	  end
    	  def from_json!(str)
    	JSON.parse(str).each { |var, val| send("#{var}=", val) }
    	  end
    	  private
    	  def to_hash
    	Hash[instance_variables.map { |var| [var[1..-1].to_sym, 
    	 send(var[1..-1])] }]
    	  end
    	end
    

    JSON gem的tojson方法将字符串或哈希值转换为JSON。 Address对象的tojson方法通过将它的数据成员转换为哈希值,然后调用to_json的散列来转换地址对象为JSON。为了将地址转换为JSON,请参考下面的列子:

    	addr1 = Address.new('555 Main Street', 'Denver', 'CO', '80231', 'US')
    
    	puts addr1.to_json 
    	# Outputs the following …
    	{"line1":"555 Main Street","city":"Denver","state_or_province":"CO","zip_or_postal_code":"80231","country":"US"}
    

    JSON gem的JSON.parse方法将一个JSON字符串转换为哈希值。地址对象的from_json!方法接收一个JSON字符串,然后调用JSON.parse转换为一个Hash值,并且按照以下方式设置每一个来自哈希的对应数据成员:

    	json_addr = <<END
    	{
    	  "line1" : "999 Broadway", "city" : "Anytown",
    	  "state_or_province" : "CA", "zip_or_postal_code" : "90210", 
    	  "country" : "USA"
    	}
    	END
    	addr2 = Address.new
    	addr2.from_json!(json_addr
    

    上一篇:

    下一篇:

    相关推荐

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注

    3 + 4 = ?

    网站地图|广东快乐10分开奖直播

    Copyright © 2015-2019 广东快乐10分开奖直播 All rights reserved.
    闽ICP备15015576号-1,版权所有?psz.

  • 周蓬安.blog的博客—强国博客—人民网 2019-05-10
  • 紫光阁中共中央国家机关工作委员会 2019-05-10
  • 感触名家笔下的端午文化吃香粽原来可以这样文艺 2019-05-09
  • 追梦夺冠游行嘲讽詹皇 百万人面前穿订制T恤羞辱他 2019-04-27
  • 《瘟疫传说》:黑死病恐怖 姐弟在绝望中求生 2019-04-10
  • 陕西国防工业职业技术学院百名大学生志愿者敬老院慰问孤寡老人陕西国防工业职业技术学院百名大学生志愿者敬老院慰问-陕西教育新闻 2019-04-08
  • 西藏拉萨:新家园 新生活 2019-04-08
  • 尊重和保障宗教信仰自由的中国实践 2019-04-06
  • 一敬泯恩仇 俄罗斯队主帅这个动作太暖了 2019-03-20
  • 四大名著剧组首次同台忆往事 经典影视剧如何铸就? 2018-12-07
  • “天眼”凝望 探秘宇宙 2018-12-07
  • 中彩网开奖查询 山东体彩快乐扑克3 排列5预测杀号 快三怎么玩 中国足彩网500万 11选5玩法 北京pk10是正规的吗 篮球让分胜负怎么玩 四川金7乐遗漏果查询 二分彩开奖结果查询 时时彩 排列五走势图带连线 北京赛车庄家会赔钱吗 七乐彩哪个台直播 乐彩极速快3官网 pc蛋蛋胜率图