如何读取文件并转义字符?

时间:2017-08-08 20:51:34

标签: ruby file escaping

我有一个包含如下字符串数组的文件:

["1234","4567","8899"]

我打开这样的文件:

File.open("./tmp/foo/foo_bar", "r") { |file| file.read }

但它带有引号和"\",如下所示:

"[\"1234\",\"4567\",\"8899\"]"

如何删除额外的"""\"

1 个答案:

答案 0 :(得分:2)

如果您正在尝试反序列化文件并将内容转换为可用的Ruby对象,那么在这种情况下您可以使用JSON库

require 'json'

contents = File.open("./tmp/foo/foo_bar", "r") { |file| file.read } # => "[\"1234\",\"4567\",\"8899\"]"
result = JSON.parse(contents) # => ["1234", "4567", "8899"]
result.is_a?(Array) # => true