Catmandu::Importer::JSON - Package that imports JSON data
# From the command line $ catmandu convert JSON to YAML < data.json # or for faster newline delimited input $ catmandu convert JSON --line_delimited 1 to YAML < data.json # In a Perl script use Catmandu; my $importer = Catmandu->importer('JSON', file => "/foo/bar.json"); my $n = $importer->each(sub { my $hashref = $_[0]; # ... });
This package imports JSON data. The parser is quite liberal in the input it accepts. You can use the line_delimited option to parse "newline delimited JSON" faster:
line_delimited
{ "recordno": 1, "name": "Alpha" } { "recordno": 2, "name": "Beta" } { "recordno": 3, "name": "Gamma" }
Read input from a local file given by its path. Alternatively a scalar reference can be passed to read from a string.
Read input from an IO::Handle. If not specified, Catmandu::Util::io is used to create the input stream from the file argument or by using STDIN.
file
Binmode of the input stream fh. Set to :utf8 by default.
fh
:utf8
An ARRAY of one or more fixes or file scripts to be applied to imported items.
Read line-delimited JSON line-by-line with a non-incremental parser.
Number of bytes that is read by each iteration of the incremental parser. Ignored if line_delinmited is 1. Default is 256.
line_delinmited
1
256
Every Catmandu::Importer is a Catmandu::Iterable all its methods are inherited. The methods are not idempotent: JSON streams can only be read once.
Catmandu::Exporter::JSON
To install Catmandu, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Catmandu
CPAN shell
perl -MCPAN -e shell install Catmandu
For more information on module installation, please visit the detailed CPAN module installation guide.