Gson'un "<" dizesini JSON çıktısında bir unicode kaçış dizisine dönüştürdüğünü fark ettim . Bundan bir şekilde kaçınabilir misiniz, yoksa "<" ve ">" gibi karakterlerin JSON'da her zaman öncelenmesi mi gerekiyor?
Yazdıran bu örneği düşünün {"s":"\u003c"}
; Basitçe isterdim {"s":"<"}
.
public static void main(String[] args) {
Gson gson = new GsonBuilder().create();
System.out.println(gson.toJson(new Foo()));
}
static class Foo {
String s = "<";
}
Bağlam: Oluşturmakta olduğum JSON parçasının HTML sayfaları ve hatta JavaScript ile hiçbir ilgisi yoktur; yalnızca belirli yapılandırılmış bilgileri başka bir yazılım parçasına geçirmek için kullanılır (C ile yazılmış bir cihaza gömülü).
2
GSON bunu varsayılan olarak yapıyor mu? Vay. JSON özellikleri açısından tamamen yasal bir şey olsa da, bu oldukça garip bir varsayılan ayardır.
—
StaxMan
Evet, benim için de şaşırtıcıydı. Neyse ki, nereye bakacağınızı bildiğinizde çare kolaydır. :) Aksi takdirde, bir günlük deneyimimden sonra, Gson'u gerçekten temiz, güzel bir kitaplık ve harika bir kullanım kılavuzu ile buluyorum !
—
Jonik
Bu aynı zamanda "\ u003d" karakterine dönüşen "=" karakterinde de olur.
—
Russell Silva