微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby – 使用JSON将哈希数组写入文件?

目前我这样做:

badLinks = Array.new
badLinksFile = File.new(arrayFilePath + 'badLinks.txt','w+')
badLinksFile.puts badLinks.to_json

数组badLinks包含哈希,并且是:

brokenLink = Hash.new
brokenLink[:onPage] = @lastPage
brokenLink[:link] = @nextPage
badLinks.push(brokenLink)

当我查看文件时它是空的.这有用吗?

解决方法

要检查几件事:

badLinksFile = File.new(arrayFilePath + 'badLinks.txt','w+')

应该是’w’而不是’w’.从IO文档:

  "w"  |  Write-only,truncates existing file
       |  to zero length or creates a new file for writing.
  -----+--------------------------------------------------------
  "w+" |  Read-write,truncates existing file to zero length
       |  or creates a new file for reading and writing.

我会更像这样编写代码

bad_links = []

brokenLink = {
  :onPage => @lastPage,:link => @nextPage
}

bad_links << brokenLink

File.write(arrayFilePath + 'badLinks.txt',bad_links.to_json)

这没有经过测试,但它更有意义,而且是惯用的Ruby.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐