Skip to content

Commit 03306a1

Browse files
committed
🐺🔩
1 parent f2034ea commit 03306a1

File tree

3 files changed

+23
-3
lines changed

3 files changed

+23
-3
lines changed

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ plugins {
1111
}
1212

1313
group 'club.someoneice.json'
14-
version '1.7.4'
14+
version '1.7.5'
1515

1616
repositories {
1717
mavenLocal()

src/main/java/club/someoneice/json/processor/JsonBuilder.java

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,29 @@ public static String asString(JsonNode<?> node) {
4747
public static String prettyPrint(String node, int ct) {
4848
StringBuilder builder = new StringBuilder();
4949
int count = ct;
50+
51+
boolean rawInput = false;
52+
boolean skinNext = false;
53+
5054
char[] charList = node.toCharArray();
5155
for (int i = 0; i < count; i++) builder.append(JsonParser.SP);
5256
for (char c : charList) {
57+
if (skinNext) {
58+
builder.append(c);
59+
skinNext = false;
60+
continue;
61+
}
62+
63+
if (c == JsonParser.KEY_STRING) {
64+
rawInput = !rawInput;
65+
}
66+
67+
if (rawInput) {
68+
skinNext = c == '\\';
69+
builder.append(c);
70+
continue;
71+
}
72+
5373
count = checkAndPut(builder, count, c);
5474
}
5575

src/test/java/club/someoneice/test/TestJson.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@ public static void main(String[] args) {
1010
MapNode map = new MapNode();
1111

1212
ArrayNode node = new ArrayNode();
13-
node.add(new StringNode("test"));
13+
node.add(new StringNode("\"test:test\""));
1414

1515
map.put("array", node);
16-
map.put("test", new StringNode("test"));
16+
map.put("test", new StringNode("test:test"));
1717

1818
String out = JsonBuilder.prettyPrint(map);
1919
System.out.println(out);

0 commit comments

Comments
 (0)