Oppure

Loading
15/05/14 20:10
mizar1
salve

ho una stringa un po complessa che dovrei splittare

sono riuscito con una serie di replace e di split consecutivi a pulire la stringa e ricavare i valori
ma penso che non sia la strada migliore

esiste un metodo migliore
e' praticamente una stringa con dei valori nidificati che si presenta cosi'
ho creato delle righe di separazione per capire meglio dove intervenire ma la stringa e tutta unita
e ci sono descrizione del campo e valore separati da :

.

[{"codice":"1.114031573","numerolibri":1,"numeropagine":3,"capitoli":


[{"selection":176184,"capitolo":10,"datiinterni"
:{"paginebianche":[{"numero":40.0,"size":19.21},{"numero":38.0,"size":2.44},{"numero":34.0,"size":2.44}],"paginenere":[{"numero":55.0,"size":2.72},{"numero":60.0,"size":2.44},{"numero":70.0,"size":23.21}],"prezzo":[]}},


{"selection":65778,"capitolo":11,"datiinterni"
:{"paginebianche":[{"numero":1.11,"size":1342.9},{"numero":1.1,"size":4833.0},{"numero":1.09,"size":4904.21}],"paginenere":[{"numero":1.12,"size":23.47},{"numero":1.13,"size":515.5},{"numero":1.14,"size":2339.09}],"prezzo":[]}},


{"selection":58805,"capitolo":12,"datiinterni"
:{"paginebianche":[{"numero":10.5,"size":2.44},{"numero":10.0,"size":152.12},{"numero":9.8,"size":40.08}],"paginenere":[{"numero":12.0,"size":72.87},{"numero":13.0,"size":95.0},{"numero":13.5,"size":100.94}],"prezzo":[]}}]}]



avete qualche idea da suggerirmi
Ultima modifica effettuata da mizar1 15/05/14 20:10
aaa
15/05/14 20:56
GN
Quelli sono (o almeno, mi sembrano proprio) dati in JSON: per parsarli ti consiglierei, invece che lavorare a mano sulle stringhe, di usare una libreria come questa json.codeplex.com/.
aaa
15/05/14 21:39
mizar1
si hai ragione
e' la stringa restituita da una chiamata jason
aaa
17/05/14 17:28
mizar1
Postato originariamente da mizar1:



[{"codice":"1.114031573","numerolibri":1,"numeropagine":3,"capitoli":


[{"selection":176184,"capitolo":10,"datiinterni"
:{"paginebianche":[{"numero":40.0,"size":19.21},{"numero":38.0,"size":2.44},{"numero":34.0,"size":2.44}],"paginenere":[{"numero":55.0,"size":2.72},{"numero":60.0,"size":2.44},{"numero":70.0,"size":23.21}],"prezzo":[]}},


{"selection":65778,"capitolo":11,"datiinterni"
:{"paginebianche":[{"numero":1.11,"size":1342.9},{"numero":1.1,"size":4833.0},{"numero":1.09,"size":4904.21}],"paginenere":[{"numero":1.12,"size":23.47},{"numero":1.13,"size":515.5},{"numero":1.14,"size":2339.09}],"prezzo":[]}},


{"selection":58805,"capitolo":12,"datiinterni"
:{"paginebianche":[{"numero":10.5,"size":2.44},{"numero":10.0,"size":152.12},{"numero":9.8,"size":40.08}],"paginenere":[{"numero":12.0,"size":72.87},{"numero":13.0,"size":95.0},{"numero":13.5,"size":100.94}],"prezzo":[]}}]}]





sto impazzendo
ho questo codice per i dati del primo livello non mi da errore quindi i campi li legge
ma se vedo Testobject1 e Testobject2 sono nothing

Public Class onelevel
Public Property codice () As String
End Class


Public Class result
Public Property codice As String
Public Property numerolibri As String
'Public Property capitoli () As String
End Class

Public Class capitoli
Public Property selection As String
Public Property capitolo As String
End Class



Private Sub Button5_Click(sender As System.Object, e As System.EventArgs) Handles Button5.Click
' Dim Testobject As onelevel = Global.Newtonsoft.Json.JsonConvert.DeserializeObject(Of onelevel)(variabileglob10)
Dim Testobject1 As result = Global.Newtonsoft.Json.JsonConvert.DeserializeObject(Of result)(variabileglob10)
Dim Testobject2 As capitoli = Global.Newtonsoft.Json.JsonConvert.DeserializeObject(Of capitoli)(variabileglob10)


End Sub
aaa