📄 test.java
字号:
package org.json;import java.util.Iterator;/** * Test class. This file is not formally a member of the org.json library. * It is just a casual test tool. */public class Test { /** * Entry point. * @param args */ public static void main(String args[]) { Iterator it; JSONArray a; JSONObject j; JSONStringer jj; String s; try { j = XML.toJSONObject("<![CDATA[This is a collection of test patterns and examples for org.json.]]>"); System.out.println(j.toString()); jj = new JSONStringer(); s = jj.object() .key("foo") .value("bar") .key("baz") .array() .object() .key("quux") .value("Thanks, Josh!") .endObject() .endArray() .endObject() .toString(); System.out.println(s); jj = new JSONStringer(); s = jj.object() .key("a") .array() .array() .array() .value("b") .endArray() .endArray() .endArray() .endObject() .toString(); System.out.println(s); jj = new JSONStringer(); jj.array(); jj.value(1); jj.array(); jj.value(null); jj.array(); jj.object(); jj.key("empty-array").array().endArray(); jj.key("answer").value(42); jj.key("null").value(null); jj.key("false").value(false); jj.key("true").value(true); jj.key("big").value(123456789e+88); jj.key("small").value(123456789e-88); jj.key("empty-object").object().endObject(); jj.key("long"); jj.value(9223372036854775807L); jj.endObject(); jj.value("two"); jj.endArray(); jj.value(true); jj.endArray(); jj.value(98.6); jj.value(-100.0); jj.object(); jj.endObject(); jj.object(); jj.key("one"); jj.value(1.00); jj.endObject(); jj.endArray(); System.out.println(jj.toString()); System.out.println(new JSONArray(jj.toString()).toString(4)); j = new JSONObject("{slashes: '///', closetag: '</script>', backslash:'\\\\', ei: {quotes: '\"\\''},eo: {a: '\"quoted\"', b:\"don't\"}, quotes: [\"'\", '\"']}"); System.out.println(j.toString(2)); System.out.println(XML.toString(j)); System.out.println(""); j = new JSONObject( "/*comment*/{foo: [true, false,9876543210, 0.0, 1.00000001, 1.000000000001, 1.00000000000000001," + " .00000000000000001, 2.00, 0.1, 2e100, -32,[],{}, \"string\"], " + " to : null, op : 'Good'," + "ten:10} postfix comment"); j.put("String", "98.6"); j.put("JSONObject", new JSONObject()); j.put("JSONArray", new JSONArray()); j.put("int", 57); j.put("double", 123456789012345678901234567890.); j.put("true", true); j.put("false", false); j.put("null", JSONObject.NULL); j.put("bool", "true"); j.put("zero", -0.0); a = j.getJSONArray("foo"); a.put(666); a.put(2001.99); a.put("so \"fine\"."); a.put("so <fine>."); a.put(true); a.put(false); a.put(new JSONArray()); a.put(new JSONObject()); System.out.println(j.toString(4)); System.out.println(XML.toString(j)); System.out.println("String: " + j.getDouble("String")); System.out.println(" bool: " + j.getBoolean("bool")); System.out.println(" to: " + j.getString("to")); System.out.println(" true: " + j.getString("true")); System.out.println(" foo: " + j.getJSONArray("foo")); System.out.println(" op: " + j.getString("op")); System.out.println(" ten: " + j.getInt("ten")); System.out.println(" oops: " + j.optBoolean("oops")); j = XML.toJSONObject("<xml one = 1 two=' \"2\" '><five></five>First \u0009<content><five></five> This is \"content\". <three> 3 </three>JSON does not preserve the sequencing of elements and contents.<three> III </three> <three> T H R E E</three><four/>Content text is an implied structure in XML. <six content=\"6\"/>JSON does not have implied structure:<seven>7</seven>everything is explicit.<![CDATA[CDATA blocks<are><supported>!]]></xml>"); System.out.println(j.toString(2)); System.out.println(XML.toString(j)); System.out.println(""); j = XML.toJSONObject("<mapping><empty/> <class name = \"Customer\"> <field name = \"ID\" type = \"string\"> <bind-xml name=\"ID\" node=\"attribute\"/> </field> <field name = \"FirstName\" type = \"FirstName\"/> <field name = \"MI\" type = \"MI\"/> <field name = \"LastName\" type = \"LastName\"/> </class> <class name = \"FirstName\"> <field name = \"text\"> <bind-xml name = \"text\" node = \"text\"/> </field> </class> <class name = \"MI\"> <field name = \"text\"> <bind-xml name = \"text\" node = \"text\"/> </field> </class> <class name = \"LastName\"> <field name = \"text\"> <bind-xml name = \"text\" node = \"text\"/> </field> </class></mapping>"); System.out.println(j.toString(2)); System.out.println(XML.toString(j)); System.out.println(""); j = XML.toJSONObject("<?xml version=\"1.0\" ?><Book Author=\"Anonymous\"><Title>Sample Book</Title><Chapter id=\"1\">This is chapter 1. It is not very long or interesting.</Chapter><Chapter id=\"2\">This is chapter 2. Although it is longer than chapter 1, it is not any more interesting.</Chapter></Book>"); System.out.println(j.toString(2)); System.out.println(XML.toString(j)); System.out.println(""); j = XML.toJSONObject("<!DOCTYPE bCard 'http://www.cs.caltech.edu/~adam/schemas/bCard'><bCard><?xml default bCard firstname = '' lastname = '' company = '' email = '' homepage = ''?><bCard firstname = 'Rohit' lastname = 'Khare' company = 'MCI' email = 'khare@mci.net' homepage = 'http://pest.w3.org/'/><bCard firstname = 'Adam' lastname = 'Rifkin' company = 'Caltech Infospheres Project' email = 'adam@cs.caltech.edu' homepage = 'http://www.cs.caltech.edu/~adam/'/></bCard>"); System.out.println(j.toString(2)); System.out.println(XML.toString(j)); System.out.println(""); j = XML.toJSONObject("<?xml version=\"1.0\"?><customer> <firstName> <text>Fred</text> </firstName> <ID>fbs0001</ID> <lastName> <text>Scerbo</text> </lastName> <MI> <text>B</text> </MI></customer>"); System.out.println(j.toString(2)); System.out.println(XML.toString(j)); System.out.println(""); j = XML.toJSONObject("<!ENTITY tp-address PUBLIC '-//ABC University::Special Collections Library//TEXT (titlepage: name and address)//EN' 'tpspcoll.sgm'><list type='simple'><head>Repository Address </head><item>Special Collections Library</item><item>ABC University</item><item>Main Library, 40 Circle Drive</item><item>Ourtown, Pennsylvania</item><item>17654 USA</item></list>"); System.out.println(j.toString()); System.out.println(XML.toString(j)); System.out.println(""); j = XML.toJSONObject("<test intertag status=ok><empty/>deluxe<blip sweet=true>&toot&toot;</blip><x>eks</x><w>bonus</w><w>bonus2</w></test>"); System.out.println(j.toString(2)); System.out.println(XML.toString(j)); System.out.println(""); j = HTTP.toJSONObject("GET / HTTP/1.0\nAccept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, */*\nAccept-Language: en-us\nUser-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; Win 9x 4.90; T312461; Q312461)\nHost: www.nokko.com\nConnection: keep-alive\nAccept-encoding: gzip, deflate\n"); System.out.println(j.toString(2)); System.out.println(HTTP.toString(j)); System.out.println(""); j = HTTP.toJSONObject("HTTP/1.1 200 Oki Doki\nDate: Sun, 26 May 2002 17:38:52 GMT\nServer: Apache/1.3.23 (Unix) mod_perl/1.26\nKeep-Alive: timeout=15, max=100\nConnection: Keep-Alive\nTransfer-Encoding: chunked\nContent-Type: text/html\n"); System.out.println(j.toString(2)); System.out.println(HTTP.toString(j)); System.out.println(""); j = new JSONObject("{nix: null, nux: false, null: 'null', 'Request-URI': '/', Method: 'GET', 'HTTP-Version': 'HTTP/1.0'}"); System.out.println(j.toString(2));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -