java
java copied to clipboard
Jsoniter fails serializing string
Exception in thread "main" com.jsoniter.spi.JsonException: Broken surrogate pair: first char 0xd83d, second 0xd83d; illegal combination
at com.jsoniter.output.StreamImplString.writeStringSlowPathWithoutEscapeUnicode(StreamImplString.java:179)
at com.jsoniter.output.StreamImplString.writeStringSlowPath(StreamImplString.java:142)
at com.jsoniter.output.StreamImplString.writeString(StreamImplString.java:93)
at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:146)
at com.jsoniter.output.CodegenImplNative$1$17.encode(CodegenImplNative.java:214)
at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362)
at com.jsoniter.output.ReflectionObjectEncoder.writeEncodeTo(ReflectionObjectEncoder.java:121)
at com.jsoniter.output.ReflectionObjectEncoder.enocde_(ReflectionObjectEncoder.java:74)
at com.jsoniter.output.ReflectionObjectEncoder.encode(ReflectionObjectEncoder.java:37)
at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:381)
at com.jsoniter.output.JsonStream.serialize(JsonStream.java:490)
at com.jsoniter.output.JsonStream.serialize(JsonStream.java:470)
at me.rabbee.test.Main.main(Main.java:16)
Codes:
import com.jsoniter.output.JsonStream;
import com.jsoniter.spi.Config;
import com.jsoniter.spi.Config.Builder;
import com.jsoniter.spi.JsoniterSpi;
public class Main {
public static void main(String[] args) {
Config.Builder builder = new Builder();
Config config = builder.escapeUnicode(false).build();
JsoniterSpi.setDefaultConfig(config);
Test test = new Test();
test.test = "lorem-\uD83D\uDC44\uD83D\uDC40";
String json = JsonStream.serialize(test);
System.out.println(json);
}
public static class Test {
public String test;
public Test() {
}
}
}
Are there any updates?