Json dizelerinde boşluk, sekme ve satır başı gibi boş karakterler göz ardı ediliyor mu?JSON'da boşluk karakterleri önemsiz midir?
Örneğin, {"a":"b"}
{"a" : "b"}
eşittir?
Json dizelerinde boşluk, sekme ve satır başı gibi boş karakterler göz ardı ediliyor mu?JSON'da boşluk karakterleri önemsiz midir?
Örneğin, {"a":"b"}
{"a" : "b"}
eşittir?
Evet, sözdiziminde çift tırnaklı bir dize değişmezinin dışındaki boşluklar yok sayılır. Özellikle, RFC 4627 gösterir JSON dilbilgisi içinde ws
üretim: Standart JSON olarak
Insignificant whitespace is allowed before or after any of the six structural characters. ws = *( %x20/ ; Space %x09/ ; Horizontal tab %x0A/ ; Line feed or New line %x0D ; Carriage return )
teşekkürler ayrıştırmış olması gerekir. RFC'yi okudum ama ne tür bir dilbilgisi denotation dilinin olduğundan emin değildim - özellikle, ne anlama geliyordu *. – nomen
* = sıfır veya daha fazla (normal ifade gösterimi) – kevinarpe
Sayısal değerlere yerleştirilmiş boşluklar hakkında: {"a": 12} {"a" ile eşdeğerdir: 1 2} Tanımı yorumla "Önemsiz boşluk öncesi veya "6 yapısal karakterden herhangi birinden sonra" bu boşluk, sayısal veya tarih değeri içinde – aeropapa17
, dize hazır dışında boşluk söylendiği gibi, göz ardı edilir. Ancak, sorunuz C# olarak etiketlendiğinden, JSON içindeki boşlukların önemli olduğu C#/NET'te en az bir başka durumun olduğunu not etmeliyim. Not: http: //www.microsoft.com/downloads/default.aspx?displaylang=tr
DataContractJsonSerializer
, doğru alt sınıfın seri hale getirilmesini desteklemek için özel bir __type
özelliği kullanır. Bu özelliğin, bir nesnenin ilk özelliği olması ve özellik adı ile önceki {
arasında hiçbir boşluk olmaması gerekir. Bu önceki iplik bakınız: DataContractJsonSerializer doesn't work with formatted JSON?
En azından, ben hiçbir boşluk gereksinimi JSON standardına uyumlu hale daha getirmek için Belki de bu gelecekteki bir sürümde değişecektir .NET 4. itibariyle doğru olduğunu test ettik ?
Tehlike, Will Robinson! – wprl
boşluk teknik olarak boş karakterler değil – Falmarri
teknik olarak senin beyin "boşluk" – mk12