Ich möchte aufzuspalten folgende Zeichenfolge mit C#Wie json Zeichenfolge in C# und Speicher in separaten Variablen
string clnt_metadata="{itc:ITC}{id:56}"
Ich möchte Ausgabe wie folgt aufteilen:
string itc="ITC"
string id="56"
Ich möchte aufzuspalten folgende Zeichenfolge mit C#Wie json Zeichenfolge in C# und Speicher in separaten Variablen
string clnt_metadata="{itc:ITC}{id:56}"
Ich möchte Ausgabe wie folgt aufteilen:
string itc="ITC"
string id="56"
Verwenden var obj = JsonConvert.DeserializeObject<objectName>(clnt_metadata)
public class objectName
{
public string ITC {get; set;}
public string id {get; set;}
}
@J Alcantara mit Ihrem Code diese Ausnahme wird auftreten '{" Fehler beim Parsen von Infinity-Wert. Pfad 'itc', Zeile 1, Position 6. "}' –
Das liegt daran, dass Ihre Zeichenfolge Json ungültig ist. Es muss '{itc:" ITC "}' – wertzui
dann, wie die angegebene Zeichenfolge in Json konvertieren und dann lesen und teilen, um die Ausgabe wie oben erwähnt – user19041992
Wie in der vorherigen Antwort erwähnt, wenn Ihr JSON ein gültiger JSON wäre, wäre es die beste Wahl, es einfach zu deserialisieren. Wenn es nicht json ist, sondern nur ähnliche Zeichenfolge, die genau die gleiche Struktur haben Sie beschrieben haben, könnten Sie es auf diese Weise analysieren:
var parts = clnt_metadata.Split(new string[] {"}{"}, StringSplitOptions.RemoveEmptyEntries)
.Select(s => s.Trim('{', '}'))
.Select(s => s.Split(':'))
.ToDictionary(s => s[0], s => s[1]);
Mit folgendem Ergebnis:
Diese Saite ist nicht gültig Json. Kannst du die Zeichenfolge ändern? Wenn nein, gehe mit regexp. – PMerlet