bundled/simplejson/simplejson/tool.py @ fc97fabaf28d
Update windows contrib script for current TortoiseHg version (2.6.2). TortoiseHg 2.6.2 is packaged with Python 2.7.3 (and not 2.6.x), and now includes some of the libraries that this script previously needed to copy into place.
| author | Chris Nielsen |
|---|---|
| date | Fri, 18 Jan 2013 11:51:36 -0500 |
| parents | 884f75280a91 |
| children | (none) |
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()