charset-decode

www.altova.com Dieses Kapitel drucken Vorherige Seite Eine Ebene nach oben Nächste Seite

Startseite >  Funktionen > Referenz Funktionsbibliothek > lang | string functions (String-Funktionen) >

charset-decode

Die Funktion charset-decode erhält als Input als Base64-Text kodierte Binärdaten, dekodiert die Daten gemäß dem definierten Zeichensatz (z.B. "utf-8") und gibt den erzeugten Stringwert zurück. Wenn Sie Binärdaten als Base64-Text verschlüsseln müssen, verwenden Sie die Funktion charset-encode.

mf_charset-decode_01

 

Argumente

Name

Typ

Beschreibung

binary-data

xs:base64Binary

Die Binärdaten als Base64-Text.

encoding

xs:string

Der für die Kodierung verwendete Zeichensatz (z.B. "utf-8").

error-abort

xs:boolean

Optionales Argument, das angibt, wie die Verarbeitung fortgesetzt werden soll, wenn Fehler auftreten. Gültige Werte:

 

true - Verarbeitung mit einer Ausnahme am ungültigen Zeichen beenden.
false - Verarbeitung fortsetzen und ungültige Zeichen durch das Ersatzzeichen ic_utf8_replacement_char ersetzen.

 

Der Standardwert ist true.

 

Beispiel

Angenommen, Sie möchten Binärdaten aus der folgenden XML-Quelldatei dekodieren. Beachten Sie, dass das Element message als Base64-Text kodierte Binärdaten enthält.

 

<?xml version="1.0" encoding="UTF-8"?>
<message xsi:noNamespaceSchemaLocation="message.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">TG9yZW0gaXBzdW0=</message>

 

Der Datentyp des Elements message ist xs:base64Binary, wie Sie im Schema sehen:

 

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="message" type="xs:base64Binary"/>
</xs:schema>

 

Im Folgenden sehen Sie ein Mapping, in dem die obige Meldung dekodiert wird:

mf_charset-decode_02

Die Ausgabe des Mappings in diesem Beispiel ist der Text "Lorem ipsum".

 

Ein Mapping kann als Base64-Daten kodierten Text oder XML-Dateien auch mit Hilfe der MapForce-Serialisierungskomponente verarbeiten. So hat das unten gezeigte Mapping etwa einen Input-Parameter, der Base64-Textdaten erwartet. Wenn die Base64-Daten anhand einer im Beispiel charset-encode gezeigten XML-Datei erstellt wurden, können Sie mit dem unten gezeigten Mapping die XML-Originaldatei wieder erzeugen.

mf_charset-decode_03

Das Argument error-abort erhält in diesem Mapping den Wert false. Dieser Wert wurde mit Hilfe der vordefinierten Funktion boolean erzeugt. Damit wird sichergestellt, dass die Verarbeitung auch bei ungültigen Zeichen fortgesetzt wird. Das String-Ergebnis der Funktion wird anschließend an eine XML-Parsing-Komponente übergeben, die es in eine XML-Datei konvertiert. Damit XML geparst werden kann, benötigen Sie eine XSD-Schema-Datei. Nähere Informationen dazu finden Sie unter Parsen und Serialisieren von Strings.


© 2019 Altova GmbH