SORU
11 HAZİRAN 2010, Cuma


Nasıl JSON dizeleri kaçmak gerekir?

El ile JSON veri oluştururken, nasıl dize alanları kaçmalıyım? Apache gibi bir şey kullanmak Commons Lang StringEscapeUtilities.escapeHtml, StringEscapeUtilities.escapeXml, I java.net.URLEncoder kullanmak gerekir gerekir?

Sorun tırnak kaçış yok ve ben ' s Bir çift bütün bir dize sarın SEU.escapeHtml, kullandığınızda, hatalı bir JSON tarafından oluşturulur.

CEVAP
11 HAZİRAN 2010, Cuma


İdealdilinizde bir JSON Kütüphanesi bulunbazı uygun veri yapısı besleyebilirsinizve bu şeylerden kaçmak için nasıl düşüneyim. Senin kadar aklım başımda kalsın. Dilinizde bir kütüphane yok her birini kullanmak istemiyorum (this1 tavsiye etmem), ya da JSON Kütüphanesi, okumaya devam ediyorsun.

RFC göre kaçış. JSON oldukça liberal: tek karaktergerekirkaçış \, " ve kontrol kodları (bir şey U 0020 daha az).

Kaçan bu yapı JSON özgüdür. JSON belirli bir fonksiyon gerekir. Kaçar tüm XXXX bu karakter için UTF-16 kod unit1 olduğu \uXXXX olarak yazılabilir. Birkaç kısayol olarak çalışan \\, gibi. (Ve onlar daha küçük ve daha net bir sonuç çıktı.)

Tüm ayrıntılar için, the RFC bkz.

1JSON kaçıyor JS üzerine inşa edilmiştir, XXXX UTF-16 kod birimi olduğu \uXXXX kullanır. BMP dışında kod noktaları için, bu biraz zor olabilir çiftlerini, kodlama anlamına gelir. (Ya da, sadece JSON için kodlanmış Unicode metin ve bu özel karakterler izin verdiği karakter doğrudan çıkış yapabilirsiniz.)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AllYourNewsByMe

    AllYourNewsB

    18 Temmuz 2011
  • Anthony Cumia

    Anthony Cumi

    5 EYLÜL 2006
  • ASUS

    ASUS

    22 EKİM 2005