mirror of
https://github.com/fangyidong/json-simple.git
synced 2025-12-06 15:30:54 +03:00
Added support for primitive and Object arrays. Added supporting unit tests.
This commit is contained in:
@@ -110,10 +110,392 @@ public class JSONArray extends ArrayList implements JSONAware, JSONStreamAware {
|
|||||||
return sb.toString();
|
return sb.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void writeJSONString(byte[] array, Writer out) throws IOException{
|
||||||
|
if(array == null){
|
||||||
|
out.write("null");
|
||||||
|
} else if(array.length == 0) {
|
||||||
|
out.write("[]");
|
||||||
|
} else {
|
||||||
|
out.write("[");
|
||||||
|
out.write(String.valueOf(array[0]));
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
out.write(",");
|
||||||
|
out.write(String.valueOf(array[i]));
|
||||||
|
}
|
||||||
|
|
||||||
|
out.write("]");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String toJSONString(byte[] array){
|
||||||
|
if(array == null){
|
||||||
|
return "null";
|
||||||
|
}
|
||||||
|
|
||||||
|
if(array.length == 0) {
|
||||||
|
return "[]";
|
||||||
|
}
|
||||||
|
|
||||||
|
final StringBuffer buffer = new StringBuffer();
|
||||||
|
|
||||||
|
buffer.append("[");
|
||||||
|
buffer.append(String.valueOf(array[0]));
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
buffer.append(",");
|
||||||
|
buffer.append(String.valueOf(array[i]));
|
||||||
|
}
|
||||||
|
|
||||||
|
buffer.append("]");
|
||||||
|
|
||||||
|
return buffer.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void writeJSONString(short[] array, Writer out) throws IOException{
|
||||||
|
if(array == null){
|
||||||
|
out.write("null");
|
||||||
|
} else if(array.length == 0) {
|
||||||
|
out.write("[]");
|
||||||
|
} else {
|
||||||
|
out.write("[");
|
||||||
|
out.write(String.valueOf(array[0]));
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
out.write(",");
|
||||||
|
out.write(String.valueOf(array[i]));
|
||||||
|
}
|
||||||
|
|
||||||
|
out.write("]");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String toJSONString(short[] array){
|
||||||
|
if(array == null){
|
||||||
|
return "null";
|
||||||
|
}
|
||||||
|
|
||||||
|
if(array.length == 0) {
|
||||||
|
return "[]";
|
||||||
|
}
|
||||||
|
|
||||||
|
final StringBuffer buffer = new StringBuffer();
|
||||||
|
|
||||||
|
buffer.append("[");
|
||||||
|
buffer.append(array[0]);
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
buffer.append(",");
|
||||||
|
buffer.append(array[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
buffer.append("]");
|
||||||
|
|
||||||
|
return buffer.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void writeJSONString(int[] array, Writer out) throws IOException{
|
||||||
|
if(array == null){
|
||||||
|
out.write("null");
|
||||||
|
} else if(array.length == 0) {
|
||||||
|
out.write("[]");
|
||||||
|
} else {
|
||||||
|
out.write("[");
|
||||||
|
out.write(String.valueOf(array[0]));
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
out.write(",");
|
||||||
|
out.write(String.valueOf(array[i]));
|
||||||
|
}
|
||||||
|
|
||||||
|
out.write("]");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String toJSONString(int[] array){
|
||||||
|
if(array == null){
|
||||||
|
return "null";
|
||||||
|
}
|
||||||
|
|
||||||
|
if(array.length == 0) {
|
||||||
|
return "[]";
|
||||||
|
}
|
||||||
|
|
||||||
|
final StringBuffer buffer = new StringBuffer();
|
||||||
|
|
||||||
|
buffer.append("[");
|
||||||
|
buffer.append(array[0]);
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
buffer.append(",");
|
||||||
|
buffer.append(array[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
buffer.append("]");
|
||||||
|
|
||||||
|
return buffer.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void writeJSONString(long[] array, Writer out) throws IOException{
|
||||||
|
if(array == null){
|
||||||
|
out.write("null");
|
||||||
|
} else if(array.length == 0) {
|
||||||
|
out.write("[]");
|
||||||
|
} else {
|
||||||
|
out.write("[");
|
||||||
|
out.write(String.valueOf(array[0]));
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
out.write(",");
|
||||||
|
out.write(String.valueOf(array[i]));
|
||||||
|
}
|
||||||
|
|
||||||
|
out.write("]");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String toJSONString(long[] array){
|
||||||
|
if(array == null){
|
||||||
|
return "null";
|
||||||
|
}
|
||||||
|
|
||||||
|
if(array.length == 0) {
|
||||||
|
return "[]";
|
||||||
|
}
|
||||||
|
|
||||||
|
final StringBuffer buffer = new StringBuffer();
|
||||||
|
|
||||||
|
buffer.append("[");
|
||||||
|
buffer.append(array[0]);
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
buffer.append(",");
|
||||||
|
buffer.append(array[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
buffer.append("]");
|
||||||
|
|
||||||
|
return buffer.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void writeJSONString(float[] array, Writer out) throws IOException{
|
||||||
|
if(array == null){
|
||||||
|
out.write("null");
|
||||||
|
} else if(array.length == 0) {
|
||||||
|
out.write("[]");
|
||||||
|
} else {
|
||||||
|
out.write("[");
|
||||||
|
out.write(String.valueOf(array[0]));
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
out.write(",");
|
||||||
|
out.write(String.valueOf(array[i]));
|
||||||
|
}
|
||||||
|
|
||||||
|
out.write("]");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String toJSONString(float[] array){
|
||||||
|
if(array == null){
|
||||||
|
return "null";
|
||||||
|
}
|
||||||
|
|
||||||
|
if(array.length == 0) {
|
||||||
|
return "[]";
|
||||||
|
}
|
||||||
|
|
||||||
|
final StringBuffer buffer = new StringBuffer();
|
||||||
|
|
||||||
|
buffer.append("[");
|
||||||
|
buffer.append(array[0]);
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
buffer.append(",");
|
||||||
|
buffer.append(array[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
buffer.append("]");
|
||||||
|
|
||||||
|
return buffer.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void writeJSONString(double[] array, Writer out) throws IOException{
|
||||||
|
if(array == null){
|
||||||
|
out.write("null");
|
||||||
|
} else if(array.length == 0) {
|
||||||
|
out.write("[]");
|
||||||
|
} else {
|
||||||
|
out.write("[");
|
||||||
|
out.write(String.valueOf(array[0]));
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
out.write(",");
|
||||||
|
out.write(String.valueOf(array[i]));
|
||||||
|
}
|
||||||
|
|
||||||
|
out.write("]");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String toJSONString(double[] array){
|
||||||
|
if(array == null){
|
||||||
|
return "null";
|
||||||
|
}
|
||||||
|
|
||||||
|
if(array.length == 0) {
|
||||||
|
return "[]";
|
||||||
|
}
|
||||||
|
|
||||||
|
final StringBuffer buffer = new StringBuffer();
|
||||||
|
|
||||||
|
buffer.append("[");
|
||||||
|
buffer.append(array[0]);
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
buffer.append(",");
|
||||||
|
buffer.append(array[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
buffer.append("]");
|
||||||
|
|
||||||
|
return buffer.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void writeJSONString(boolean[] array, Writer out) throws IOException{
|
||||||
|
if(array == null){
|
||||||
|
out.write("null");
|
||||||
|
} else if(array.length == 0) {
|
||||||
|
out.write("[]");
|
||||||
|
} else {
|
||||||
|
out.write("[");
|
||||||
|
out.write(String.valueOf(array[0]));
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
out.write(",");
|
||||||
|
out.write(String.valueOf(array[i]));
|
||||||
|
}
|
||||||
|
|
||||||
|
out.write("]");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String toJSONString(boolean[] array){
|
||||||
|
if(array == null){
|
||||||
|
return "null";
|
||||||
|
}
|
||||||
|
|
||||||
|
if(array.length == 0) {
|
||||||
|
return "[]";
|
||||||
|
}
|
||||||
|
|
||||||
|
final StringBuffer buffer = new StringBuffer();
|
||||||
|
|
||||||
|
buffer.append("[");
|
||||||
|
buffer.append(array[0]);
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
buffer.append(",");
|
||||||
|
buffer.append(array[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
buffer.append("]");
|
||||||
|
|
||||||
|
return buffer.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void writeJSONString(char[] array, Writer out) throws IOException{
|
||||||
|
if(array == null){
|
||||||
|
out.write("null");
|
||||||
|
} else if(array.length == 0) {
|
||||||
|
out.write("[]");
|
||||||
|
} else {
|
||||||
|
out.write("[\"");
|
||||||
|
out.write(String.valueOf(array[0]));
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
out.write("\",\"");
|
||||||
|
out.write(String.valueOf(array[i]));
|
||||||
|
}
|
||||||
|
|
||||||
|
out.write("\"]");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String toJSONString(char[] array){
|
||||||
|
if(array == null){
|
||||||
|
return "null";
|
||||||
|
}
|
||||||
|
|
||||||
|
if(array.length == 0) {
|
||||||
|
return "[]";
|
||||||
|
}
|
||||||
|
|
||||||
|
final StringBuffer buffer = new StringBuffer();
|
||||||
|
|
||||||
|
buffer.append("[\"");
|
||||||
|
buffer.append(array[0]);
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
buffer.append("\",\"");
|
||||||
|
buffer.append(array[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
buffer.append("\"]");
|
||||||
|
|
||||||
|
return buffer.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void writeJSONString(Object[] array, Writer out) throws IOException{
|
||||||
|
if(array == null){
|
||||||
|
out.write("null");
|
||||||
|
} else if(array.length == 0) {
|
||||||
|
out.write("[]");
|
||||||
|
} else {
|
||||||
|
out.write("[");
|
||||||
|
JSONValue.writeJSONString(array[0], out);
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
out.write(",");
|
||||||
|
JSONValue.writeJSONString(array[i], out);
|
||||||
|
}
|
||||||
|
|
||||||
|
out.write("]");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String toJSONString(Object[] array){
|
||||||
|
if(array == null){
|
||||||
|
return "null";
|
||||||
|
}
|
||||||
|
|
||||||
|
if(array.length == 0) {
|
||||||
|
return "[]";
|
||||||
|
}
|
||||||
|
|
||||||
|
final StringBuffer buffer = new StringBuffer();
|
||||||
|
|
||||||
|
buffer.append("[");
|
||||||
|
buffer.append(JSONValue.toJSONString(array[0]));
|
||||||
|
|
||||||
|
for(int i = 1; i < array.length; i++){
|
||||||
|
buffer.append(",");
|
||||||
|
buffer.append(JSONValue.toJSONString(array[i]));
|
||||||
|
}
|
||||||
|
|
||||||
|
buffer.append("]");
|
||||||
|
|
||||||
|
return buffer.toString();
|
||||||
|
}
|
||||||
|
|
||||||
public String toJSONString(){
|
public String toJSONString(){
|
||||||
return toJSONString(this);
|
return toJSONString(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns a string representation of this array. This is equivalent to
|
||||||
|
* calling {@link JSONArray#toJSONString()}.
|
||||||
|
*/
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return toJSONString();
|
return toJSONString();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -152,6 +152,51 @@ public class JSONValue {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(value instanceof byte[]){
|
||||||
|
JSONArray.writeJSONString((byte[])value, out);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(value instanceof short[]){
|
||||||
|
JSONArray.writeJSONString((short[])value, out);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(value instanceof int[]){
|
||||||
|
JSONArray.writeJSONString((int[])value, out);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(value instanceof long[]){
|
||||||
|
JSONArray.writeJSONString((long[])value, out);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(value instanceof float[]){
|
||||||
|
JSONArray.writeJSONString((float[])value, out);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(value instanceof double[]){
|
||||||
|
JSONArray.writeJSONString((double[])value, out);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(value instanceof boolean[]){
|
||||||
|
JSONArray.writeJSONString((boolean[])value, out);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(value instanceof char[]){
|
||||||
|
JSONArray.writeJSONString((char[])value, out);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(value instanceof Object[]){
|
||||||
|
JSONArray.writeJSONString((Object[])value, out);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
out.write(value.toString());
|
out.write(value.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -205,6 +250,33 @@ public class JSONValue {
|
|||||||
if(value instanceof Collection)
|
if(value instanceof Collection)
|
||||||
return JSONArray.toJSONString((Collection)value);
|
return JSONArray.toJSONString((Collection)value);
|
||||||
|
|
||||||
|
if(value instanceof byte[])
|
||||||
|
return JSONArray.toJSONString((byte[])value);
|
||||||
|
|
||||||
|
if(value instanceof short[])
|
||||||
|
return JSONArray.toJSONString((short[])value);
|
||||||
|
|
||||||
|
if(value instanceof int[])
|
||||||
|
return JSONArray.toJSONString((int[])value);
|
||||||
|
|
||||||
|
if(value instanceof long[])
|
||||||
|
return JSONArray.toJSONString((long[])value);
|
||||||
|
|
||||||
|
if(value instanceof float[])
|
||||||
|
return JSONArray.toJSONString((float[])value);
|
||||||
|
|
||||||
|
if(value instanceof double[])
|
||||||
|
return JSONArray.toJSONString((double[])value);
|
||||||
|
|
||||||
|
if(value instanceof boolean[])
|
||||||
|
return JSONArray.toJSONString((boolean[])value);
|
||||||
|
|
||||||
|
if(value instanceof char[])
|
||||||
|
return JSONArray.toJSONString((char[])value);
|
||||||
|
|
||||||
|
if(value instanceof Object[])
|
||||||
|
return JSONArray.toJSONString((Object[])value);
|
||||||
|
|
||||||
return value.toString();
|
return value.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -61,4 +61,228 @@ public class JSONArrayTest extends TestCase {
|
|||||||
assertEquals(2, jsonArray.size());
|
assertEquals(2, jsonArray.size());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void testByteArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONArray.toJSONString((byte[])null));
|
||||||
|
assertEquals("[]", JSONArray.toJSONString(new byte[0]));
|
||||||
|
assertEquals("[12]", JSONArray.toJSONString(new byte[] { 12 }));
|
||||||
|
assertEquals("[-7,22,86,-99]", JSONArray.toJSONString(new byte[] { -7, 22, 86, -99 }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString((byte[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new byte[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new byte[] { 12 }, writer);
|
||||||
|
assertEquals("[12]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new byte[] { -7, 22, 86, -99 }, writer);
|
||||||
|
assertEquals("[-7,22,86,-99]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testShortArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONArray.toJSONString((short[])null));
|
||||||
|
assertEquals("[]", JSONArray.toJSONString(new short[0]));
|
||||||
|
assertEquals("[12]", JSONArray.toJSONString(new short[] { 12 }));
|
||||||
|
assertEquals("[-7,22,86,-99]", JSONArray.toJSONString(new short[] { -7, 22, 86, -99 }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString((short[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new short[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new short[] { 12 }, writer);
|
||||||
|
assertEquals("[12]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new short[] { -7, 22, 86, -99 }, writer);
|
||||||
|
assertEquals("[-7,22,86,-99]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testIntArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONArray.toJSONString((int[])null));
|
||||||
|
assertEquals("[]", JSONArray.toJSONString(new int[0]));
|
||||||
|
assertEquals("[12]", JSONArray.toJSONString(new int[] { 12 }));
|
||||||
|
assertEquals("[-7,22,86,-99]", JSONArray.toJSONString(new int[] { -7, 22, 86, -99 }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString((int[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new int[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new int[] { 12 }, writer);
|
||||||
|
assertEquals("[12]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new int[] { -7, 22, 86, -99 }, writer);
|
||||||
|
assertEquals("[-7,22,86,-99]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testLongArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONArray.toJSONString((long[])null));
|
||||||
|
assertEquals("[]", JSONArray.toJSONString(new long[0]));
|
||||||
|
assertEquals("[12]", JSONArray.toJSONString(new long[] { 12 }));
|
||||||
|
assertEquals("[-7,22,9223372036854775807,-99]", JSONArray.toJSONString(new long[] { -7, 22, 9223372036854775807L, -99 }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString((long[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new long[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new long[] { 12 }, writer);
|
||||||
|
assertEquals("[12]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new long[] { -7, 22, 86, -99 }, writer);
|
||||||
|
assertEquals("[-7,22,86,-99]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testFloatArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONArray.toJSONString((float[])null));
|
||||||
|
assertEquals("[]", JSONArray.toJSONString(new float[0]));
|
||||||
|
assertEquals("[12.8]", JSONArray.toJSONString(new float[] { 12.8f }));
|
||||||
|
assertEquals("[-7.1,22.234,86.7,-99.02]", JSONArray.toJSONString(new float[] { -7.1f, 22.234f, 86.7f, -99.02f }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString((float[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new float[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new float[] { 12.8f }, writer);
|
||||||
|
assertEquals("[12.8]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new float[] { -7.1f, 22.234f, 86.7f, -99.02f }, writer);
|
||||||
|
assertEquals("[-7.1,22.234,86.7,-99.02]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testDoubleArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONArray.toJSONString((double[])null));
|
||||||
|
assertEquals("[]", JSONArray.toJSONString(new double[0]));
|
||||||
|
assertEquals("[12.8]", JSONArray.toJSONString(new double[] { 12.8 }));
|
||||||
|
assertEquals("[-7.1,22.234,86.7,-99.02]", JSONArray.toJSONString(new double[] { -7.1, 22.234, 86.7, -99.02 }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString((double[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new double[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new double[] { 12.8 }, writer);
|
||||||
|
assertEquals("[12.8]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new double[] { -7.1, 22.234, 86.7, -99.02 }, writer);
|
||||||
|
assertEquals("[-7.1,22.234,86.7,-99.02]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testBooleanArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONArray.toJSONString((boolean[])null));
|
||||||
|
assertEquals("[]", JSONArray.toJSONString(new boolean[0]));
|
||||||
|
assertEquals("[true]", JSONArray.toJSONString(new boolean[] { true }));
|
||||||
|
assertEquals("[true,false,true]", JSONArray.toJSONString(new boolean[] { true, false, true }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString((boolean[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new boolean[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new boolean[] { true }, writer);
|
||||||
|
assertEquals("[true]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new boolean[] { true, false, true }, writer);
|
||||||
|
assertEquals("[true,false,true]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testCharArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONArray.toJSONString((char[])null));
|
||||||
|
assertEquals("[]", JSONArray.toJSONString(new char[0]));
|
||||||
|
assertEquals("[\"a\"]", JSONArray.toJSONString(new char[] { 'a' }));
|
||||||
|
assertEquals("[\"a\",\"b\",\"c\"]", JSONArray.toJSONString(new char[] { 'a', 'b', 'c' }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString((char[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new char[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new char[] { 'a' }, writer);
|
||||||
|
assertEquals("[\"a\"]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new char[] { 'a', 'b', 'c' }, writer);
|
||||||
|
assertEquals("[\"a\",\"b\",\"c\"]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testObjectArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONArray.toJSONString((Object[])null));
|
||||||
|
assertEquals("[]", JSONArray.toJSONString(new Object[0]));
|
||||||
|
assertEquals("[\"Hello\"]", JSONArray.toJSONString(new Object[] { "Hello" }));
|
||||||
|
assertEquals("[\"Hello\",12,[1,2,3]]", JSONArray.toJSONString(new Object[] { "Hello", new Integer(12), new int[] { 1, 2, 3 } }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString((Object[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new Object[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new Object[] { "Hello" }, writer);
|
||||||
|
assertEquals("[\"Hello\"]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONArray.writeJSONString(new Object[] { "Hello", new Integer(12), new int[] { 1, 2, 3} }, writer);
|
||||||
|
assertEquals("[\"Hello\",12,[1,2,3]]", writer.toString());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
233
src/test/java/org/json/simple/JSONValueTest.java
Normal file
233
src/test/java/org/json/simple/JSONValueTest.java
Normal file
@@ -0,0 +1,233 @@
|
|||||||
|
package org.json.simple;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.StringWriter;
|
||||||
|
|
||||||
|
import junit.framework.TestCase;
|
||||||
|
|
||||||
|
public class JSONValueTest extends TestCase {
|
||||||
|
public void testByteArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONValue.toJSONString((byte[])null));
|
||||||
|
assertEquals("[]", JSONValue.toJSONString(new byte[0]));
|
||||||
|
assertEquals("[12]", JSONValue.toJSONString(new byte[] { 12 }));
|
||||||
|
assertEquals("[-7,22,86,-99]", JSONValue.toJSONString(new byte[] { -7, 22, 86, -99 }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString((byte[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new byte[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new byte[] { 12 }, writer);
|
||||||
|
assertEquals("[12]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new byte[] { -7, 22, 86, -99 }, writer);
|
||||||
|
assertEquals("[-7,22,86,-99]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testShortArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONValue.toJSONString((short[])null));
|
||||||
|
assertEquals("[]", JSONValue.toJSONString(new short[0]));
|
||||||
|
assertEquals("[12]", JSONValue.toJSONString(new short[] { 12 }));
|
||||||
|
assertEquals("[-7,22,86,-99]", JSONValue.toJSONString(new short[] { -7, 22, 86, -99 }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString((short[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new short[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new short[] { 12 }, writer);
|
||||||
|
assertEquals("[12]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new short[] { -7, 22, 86, -99 }, writer);
|
||||||
|
assertEquals("[-7,22,86,-99]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testIntArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONValue.toJSONString((int[])null));
|
||||||
|
assertEquals("[]", JSONValue.toJSONString(new int[0]));
|
||||||
|
assertEquals("[12]", JSONValue.toJSONString(new int[] { 12 }));
|
||||||
|
assertEquals("[-7,22,86,-99]", JSONValue.toJSONString(new int[] { -7, 22, 86, -99 }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString((int[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new int[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new int[] { 12 }, writer);
|
||||||
|
assertEquals("[12]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new int[] { -7, 22, 86, -99 }, writer);
|
||||||
|
assertEquals("[-7,22,86,-99]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testLongArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONValue.toJSONString((long[])null));
|
||||||
|
assertEquals("[]", JSONValue.toJSONString(new long[0]));
|
||||||
|
assertEquals("[12]", JSONValue.toJSONString(new long[] { 12 }));
|
||||||
|
assertEquals("[-7,22,9223372036854775807,-99]", JSONValue.toJSONString(new long[] { -7, 22, 9223372036854775807L, -99 }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString((long[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new long[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new long[] { 12 }, writer);
|
||||||
|
assertEquals("[12]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new long[] { -7, 22, 86, -99 }, writer);
|
||||||
|
assertEquals("[-7,22,86,-99]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testFloatArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONValue.toJSONString((float[])null));
|
||||||
|
assertEquals("[]", JSONValue.toJSONString(new float[0]));
|
||||||
|
assertEquals("[12.8]", JSONValue.toJSONString(new float[] { 12.8f }));
|
||||||
|
assertEquals("[-7.1,22.234,86.7,-99.02]", JSONValue.toJSONString(new float[] { -7.1f, 22.234f, 86.7f, -99.02f }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString((float[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new float[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new float[] { 12.8f }, writer);
|
||||||
|
assertEquals("[12.8]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new float[] { -7.1f, 22.234f, 86.7f, -99.02f }, writer);
|
||||||
|
assertEquals("[-7.1,22.234,86.7,-99.02]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testDoubleArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONValue.toJSONString((double[])null));
|
||||||
|
assertEquals("[]", JSONValue.toJSONString(new double[0]));
|
||||||
|
assertEquals("[12.8]", JSONValue.toJSONString(new double[] { 12.8 }));
|
||||||
|
assertEquals("[-7.1,22.234,86.7,-99.02]", JSONValue.toJSONString(new double[] { -7.1, 22.234, 86.7, -99.02 }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString((double[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new double[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new double[] { 12.8 }, writer);
|
||||||
|
assertEquals("[12.8]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new double[] { -7.1, 22.234, 86.7, -99.02 }, writer);
|
||||||
|
assertEquals("[-7.1,22.234,86.7,-99.02]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testBooleanArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONValue.toJSONString((boolean[])null));
|
||||||
|
assertEquals("[]", JSONValue.toJSONString(new boolean[0]));
|
||||||
|
assertEquals("[true]", JSONValue.toJSONString(new boolean[] { true }));
|
||||||
|
assertEquals("[true,false,true]", JSONValue.toJSONString(new boolean[] { true, false, true }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString((boolean[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new boolean[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new boolean[] { true }, writer);
|
||||||
|
assertEquals("[true]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new boolean[] { true, false, true }, writer);
|
||||||
|
assertEquals("[true,false,true]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testCharArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONValue.toJSONString((char[])null));
|
||||||
|
assertEquals("[]", JSONValue.toJSONString(new char[0]));
|
||||||
|
assertEquals("[\"a\"]", JSONValue.toJSONString(new char[] { 'a' }));
|
||||||
|
assertEquals("[\"a\",\"b\",\"c\"]", JSONValue.toJSONString(new char[] { 'a', 'b', 'c' }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString((char[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new char[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new char[] { 'a' }, writer);
|
||||||
|
assertEquals("[\"a\"]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new char[] { 'a', 'b', 'c' }, writer);
|
||||||
|
assertEquals("[\"a\",\"b\",\"c\"]", writer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testObjectArrayToString() throws IOException {
|
||||||
|
assertEquals("null", JSONValue.toJSONString((Object[])null));
|
||||||
|
assertEquals("[]", JSONValue.toJSONString(new Object[0]));
|
||||||
|
assertEquals("[\"Hello\"]", JSONValue.toJSONString(new Object[] { "Hello" }));
|
||||||
|
assertEquals("[\"Hello\",12,[1,2,3]]", JSONValue.toJSONString(new Object[] { "Hello", new Integer(12), new int[] { 1, 2, 3 } }));
|
||||||
|
|
||||||
|
StringWriter writer;
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString((Object[])null, writer);
|
||||||
|
assertEquals("null", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new Object[0], writer);
|
||||||
|
assertEquals("[]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new Object[] { "Hello" }, writer);
|
||||||
|
assertEquals("[\"Hello\"]", writer.toString());
|
||||||
|
|
||||||
|
writer = new StringWriter();
|
||||||
|
JSONValue.writeJSONString(new Object[] { "Hello", new Integer(12), new int[] { 1, 2, 3} }, writer);
|
||||||
|
assertEquals("[\"Hello\",12,[1,2,3]]", writer.toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user