UiPath Documentation
activities
latest
false
Entwickleraktivitäten
Wichtig :
Bitte beachten Sie, dass dieser Inhalt teilweise mithilfe von maschineller Übersetzung lokalisiert wurde. Es kann 1–2 Wochen dauern, bis die Lokalisierung neu veröffentlichter Inhalte verfügbar ist.

Deserialize JSON

UiPath.WebAPI.Activities.DeserializeJson

Beschreibung

Deserialisiert die JSON-Zeichenfolge oder das Beispiel zu einem JSON-Objekt. Standardmäßig ist das Ergebnis ein JObject, aber Sie können mit der Eigenschaft Ausgabetyp einen anderen Ausgabetyp auswählen.

Projektkompatibilität

Windows - Legacy | Windows | Plattformübergreifend

Voraussetzungen

Um die Eigenschaft Serialisierungseinstellungen mithilfe der Datenzuordnung zu konfigurieren, verwenden Sie Studio 25.10 oder höher. In früheren Studio-Versionen verwendet diese Eigenschaft stattdessen das Ausdrucks-Editor- Fenster.

Windows, plattformübergreifende Konfiguration

  • JSON String - The string containing the JSON to be deserialized. The JSON should be written without indents, and between double quotes. Strings inside the JSON should be written with single quotes. For example, the following JSON is valid: "{'TenancyName': 'Documentation', 'UsernameOrEmail': 'Documentation', 'Password': 'Documentation'}".
  • JSON-Beispiel – Ein Beispiel für die JSON, die zum Generieren der Eigenschaften des Ausgabeobjekts verwendet wird. Das Beispiel muss im JSON-Format sein. Die Aktivität wandelt dieses Beispiel in ein ähnliches Objekt um, das Sie während der Entwurfszeit verwenden können.

Erweiterte Optionen

Eingabe
  • Serialisierungseinstellungen – Benutzerdefinierte Deserialisierungseinstellungen, die beim Deserialisieren des JSON-Strings verwendet werden sollen. Verwenden Sie diese Eigenschaft, wenn Sie vollständig steuern möchten, wie die JSON-Zeichenfolge deserialisiert wird.
  • Ausgabetyp – Eine Dropdownliste, in der Sie den Argumenttyp des Objekts auswählen können, in das deserialisiert werden soll.
    Hinweis:

    In Studio Web wird durch das Generieren der Ausgabestruktur aus der Eigenschaft JSON-Beispiel die Eigenschaft Ausgabetyp schreibgeschützt.

Ausgabe
  • JSONObject - Die deserialisierte JSON, zurückgegeben als Objekt des in der Eigenschaft Ausgabetyp ausgewählten Typs. Wenn der Standardtyp verwendet wird, ist das Ergebnis eine Newtonsoft.Json.Linq.JObject -Variable. Lesen Sie weitere Informationen zu Newtonsoft.Json.Linq.JObject -Objekten.

Beispiel für die Verwendung des JSON-Beispiels

Die Eigenschaft JSON-Beispiel generiert die Ausgabeobjektstruktur zur Entwurfszeit aus einem repräsentativen JSON-Snippet. Nachdem Sie ein Beispiel angegeben haben, leitet die Aktivität einen übereinstimmenden Typ ab und weist ihn der Eigenschaft Ausgabetyp zu, sodass Sie in nachgelagerten Aktivitäten anhand des Namens auf die deserialisierten Werte verweisen können, anstatt sie mit SelectToken abzufragen.

Hinweis:

Die Eigenschaft JSON-Beispiel hilft während der Entwurfsphase. Sie ist in Studio Web und in Studio-Versionen verfügbar, die benutzerdefinierte Typinferenz unterstützen. Wenn diese Funktionen nicht verfügbar sind, ist die Eigenschaft ausgeblendet.

Um die Verwendung des JSON-Beispiels zu veranschaulichen, extrahieren wir den Namen und die Stadt einer Person aus einer JSON-Zeichenfolge:

  1. Fügen Sie Ihrem Workflow eine Deserialize JSON- Aktivität hinzu.

  2. Geben Sie im Feld JSON-String die zu deserialisierende JSON ein. Zum Beispiel: "{'name': 'John Doe', 'age': 30, 'address': {'city': 'New York'}}".

  3. Fügen Sie im Feld JSON-Beispiel ein repräsentatives Beispiel mit derselben Struktur ein:

    {
      "name": "John Doe",
      "age": 30,
      "address": {
        "city": "New York"
      }
    }
    {
      "name": "John Doe",
      "age": 30,
      "address": {
        "city": "New York"
      }
    }
    

    Die Aktivität liest das Beispiel und generiert ein Ausgabeobjekt, das diese Struktur widerspiegelt. Die Eigenschaft Ausgabetyp wird auf den generierten Typ aktualisiert.

  4. Verweisen Sie in einer nachfolgenden Aktivität direkt über die in Ihrem Beispiel definierten Eigenschaftsnamen auf die deserialisierten Werte, z. B. JsonObject.name und JsonObject.address.city, anstatt JsonObject.SelectToken("name") zu verwenden.

Ergebnis

Das Ausgabeobjekt macht die Eigenschaften aus Ihrem Beispiel verfügbar, sodass JsonObject.name John Doe und JsonObject.address.city New York zurückgibt, ohne das JSON mit SelectToken abzufragen.

Beispiel für die Verwendung von Serialisierungseinstellungen

Wenn für die Eigenschaft Serialisierungseinstellungen keine Datenzuordnung verfügbar ist, konfigurieren Sie sie im Ausdrucks-Editor mithilfe eines der folgenden Code-Snippets. Weitere Informationen finden Sie in der Newtonsoft-Dokumentation.

VB.NET

New JsonDeserializationSettings With {
.MissingMemberHandling = JsonMissingMemberHandling.Ignore,
.NullValueHandling = JsonNullValueHandling.Ignore,
.DateParseHandling = JsonDateParseHandling.DateTime,
.DateTimeZoneHandling = JsonDateTimeZoneHandling.Utc,
.FloatParseHandling = JsonFloatParseHandling.Double
}
New JsonDeserializationSettings With {
.MissingMemberHandling = JsonMissingMemberHandling.Ignore,
.NullValueHandling = JsonNullValueHandling.Ignore,
.DateParseHandling = JsonDateParseHandling.DateTime,
.DateTimeZoneHandling = JsonDateTimeZoneHandling.Utc,
.FloatParseHandling = JsonFloatParseHandling.Double
}

C#

new JsonDeserializationSettings
{
MissingMemberHandling = JsonMissingMemberHandling.Ignore,
NullValueHandling = JsonNullValueHandling.Ignore,
DateParseHandling = JsonDateParseHandling.DateTime,
DateTimeZoneHandling = JsonDateTimeZoneHandling.Utc,
FloatParseHandling = JsonFloatParseHandling.Double
}
new JsonDeserializationSettings
{
MissingMemberHandling = JsonMissingMemberHandling.Ignore,
NullValueHandling = JsonNullValueHandling.Ignore,
DateParseHandling = JsonDateParseHandling.DateTime,
DateTimeZoneHandling = JsonDateTimeZoneHandling.Utc,
FloatParseHandling = JsonFloatParseHandling.Double
}

Windows – Legacy-Konfiguration

Eigenschaften-Panel

Allgemein
  • AnzeigeName (DisplayName) - Der Anzeigename der Aktivität.
Eingabe
  • JSON-Beispiel – Das JSON-Beispiel für die Ausgabestruktur. Die Aktivität wandelt dieses Beispiel in ein ähnliches Objekt um, das Sie während der Entwurfszeit verwenden können.
  • JsonZeichenfolge - Die Zeichenfolge, die das zu deserialisierende JSON enthält. Schreiben Sie das JSON ohne Einrückungen und in doppelte Anführungszeichen. Zeichenfolgen innerhalb des JSON-Objekts müssen in einfachen Anführungszeichen geschrieben werden. Zum Beispiel ist das folgende JSON-Objekt gültig: „{'TenancyName': 'Documentation', 'UsernameOrEmail': 'Documentation', 'Password': 'Documentation'}“.
Sonstiges
  • Privat (Private) - Bei Auswahl werden die Werte von Variablen und Argumenten nicht mehr auf der Stufe Verbose protokolliert.
  • Argumenttyp – Eine Dropdownliste, mit der Sie den Typ der zurückgegebenen Ausgabe auswählen können. Die angegebene JSON-Zeichenfolge wird in ein Objekt des ausgewählten Typs konvertiert.
Ausgabe

Beispiel für die Verwendung der Aktivität Deserialize Json

Die Aktivität Deserialize Json wird zum Extrahieren von Daten aus JSON-Dateien und -Zeichenfolgen verwendet.

Um die Verwendung dieser Aktivität zu veranschaulichen, haben wir ein Beispiel erstellt, das die Aktivität Deserialize Json verwendet, um das Alter einer Person aus einer JSON-Datei zu extrahieren.

So kann der Automatisierungsprozess erstellt werden:

  1. Öffnen Sie Studio und erstellen Sie einen neuen Prozess.
  2. Drag a Sequence to the Workflow Designer.
    • Erstellen Sie die folgenden Variablen:

      VariablennameVariablentypStandardwert
      JsonTextString
      JsonObjJObject
      AgeGenericValue
  3. Drag a Read Text File activity inside the sequence container.
    • In the Properties panel, add the value "JsonString.txt" in the FileName field.
    • Add the variable JsonText in the Content field.
  4. Fügen Sie die Aktivität Deserialize JSON nach der Aktivität Read Text File hinzu.
    • In the Properties panel, add the variable JsonText in the JsonString field and the variable JsonObj in the JsonObject field.
    • Select the value Newtonsoft.Json.Linq.JObject from the TypeArgument drop-down list.
  5. Place an Assign activity under the Deserialize JSON activity.
    • Add the variable Age in the To field and the expression JsonObj.SelectToken("age").ToString in the Value field.
  6. Ziehen Sie eine Write Line-Aktivität nach der Assign-Aktivität.
    • Fügen Sie die Variable Age in das Feld Text ein.
  7. Run the process. The robot extracts the age value from the .json file and displays it in the Output panel.

Hier können Sie ein Beispiel herunterladen.

War diese Seite hilfreich?

Verbinden

Benötigen Sie Hilfe? Support

Möchten Sie lernen? UiPath Academy

Haben Sie Fragen? UiPath-Forum

Auf dem neuesten Stand bleiben