| Index: pylib/simplejson/tool.py
|
| ===================================================================
|
| --- pylib/simplejson/tool.py (revision 0)
|
| +++ pylib/simplejson/tool.py (revision 0)
|
| @@ -0,0 +1,39 @@
|
| +r"""Command-line tool to validate and pretty-print JSON
|
| +
|
| +Usage::
|
| +
|
| + $ echo '{"json":"obj"}' | python -m simplejson.tool
|
| + {
|
| + "json": "obj"
|
| + }
|
| + $ echo '{ 1.2:3.4}' | python -m simplejson.tool
|
| + Expecting property name: line 1 column 2 (char 2)
|
| +
|
| +"""
|
| +import sys
|
| +import simplejson as json
|
| +
|
| +def main():
|
| + if len(sys.argv) == 1:
|
| + infile = sys.stdin
|
| + outfile = sys.stdout
|
| + elif len(sys.argv) == 2:
|
| + infile = open(sys.argv[1], 'rb')
|
| + outfile = sys.stdout
|
| + elif len(sys.argv) == 3:
|
| + infile = open(sys.argv[1], 'rb')
|
| + outfile = open(sys.argv[2], 'wb')
|
| + else:
|
| + raise SystemExit(sys.argv[0] + " [infile [outfile]]")
|
| + try:
|
| + obj = json.load(infile,
|
| + object_pairs_hook=json.OrderedDict,
|
| + use_decimal=True)
|
| + except ValueError, e:
|
| + raise SystemExit(e)
|
| + json.dump(obj, outfile, sort_keys=True, indent=' ', use_decimal=True)
|
| + outfile.write('\n')
|
| +
|
| +
|
| +if __name__ == '__main__':
|
| + main()
|
|
|