为什么Perl的JSON模块不能读写文件?

3
我是否遗漏了什么,或者说JSON缺少write_to_file()read_from_file()子例程?显然,我很容易实现它们,但是由于它们看起来如此方便,我想知道为什么它们不在那里。

2
JSON让您以自己想要的方式完成整个文件管理(打开、检查权限、错误处理)。这样,您可以将对象存储/读取到DB、网络连接等中。 - eumiro
2个回答

8

是的,它缺少write_to_file()read_from_file()函数,因为通常不会将JSON存储在文件中,而仅使用它将数据发送回Web客户端。您必须自己实现它,正如您正确所说,这并不需要太多工作。


6
use JSON;

sub read_from_file {
my $json;
{
  local $/; #Enable 'slurp' mode
  open my $fh, "<", "data_in.json";
  $json = <$fh>;
  close $fh;
}
return decode_json($json);
}

sub write_to_file {
my $data  = shift;
open my $fh, ">", "data_out.json";
print $fh encode_json($data);
close $fh;
}

3
一些解释会更好。 - Andrew Barber

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接