System.JSON.Utils.TJsonTextUtils.WriteEscapedString
Delphi
class procedure WriteEscapedString(const Writer: TTextWriter; const Str: string; Delimiter: Char; AppendDelimiters: Boolean; const CharEscapeFlags: array of Boolean; StringEscapeHandling: TJsonStringEscapeHandling; var WriteBuffer: TCharArray);
C++
__classmethod void __fastcall WriteEscapedString(System::Classes::TTextWriter* const Writer, const System::UnicodeString Str, System::WideChar Delimiter, bool AppendDelimiters, const bool *CharEscapeFlags, const int CharEscapeFlags_High, System::Json::Types::TJsonStringEscapeHandling StringEscapeHandling, System::DynamicArray<System::WideChar> &WriteBuffer);
Propriétés
| Type | Visibilité | Source | Unité | Parent |
|---|---|---|---|---|
procedure function |
public | System.JSON.Utils.pas System.JSON.Utils.hpp |
System.JSON.Utils | TJsonTextUtils |
Description
Génère une chaîne JSON à partir d'une chaîne donnée.
WriteEscapedString reçoit les paramètres suivants :
Writerest l'éditeur de texte utilisé par WriteEscapedString pour générer la chaîne JSON résultante.Strest la chaîne à convertir en chaîne JSON.AppendDelimitersdétermine si la chaîne résultante est encadrée par des caractères de guillemets simples ou doubles (True) ou non (False).Delimiterest le caractère de guillemets simples ou doubles à ajouter au début et à la fin de la chaîne JSON résultante siAppendDelimitersvautTrue. Pour que la chaîne JSON résultante soit une chaîne JSON appropriée, ce caractère doit être un guillemet simple (') ou un guillemet double (").CharEscapeFlagsest un tableau d'indicateurs d'échappement de caractère. Pour de plus amples informations, voir Echappement de caractère ci-dessous.StringEscapeHandlingdétermine le type d'échappement de caractère utilisé par WriteEscapedString.WriteBufferest un tampon utilisé par WriteEscapedString en interne.
Echappement de caractère
WriteEscapedString place dans une séquence d'échappement :
- Les caractères qui ont un indicateur
TruedansCharEscapeFlags. - Les caractères qui n'ont pas d'indicateur correspondant dans
CharEscapeFlags, siStringEscapeHandlingvaut TJsonStringEscapeHandling.EscapeNonAscii.
WriteEscapedString place la plupart des caractères utilisant des séquences d'échappement Unicode dans des séquences d'échappement. Le tableau suivant affiche les seuls caractères que WriteEscapedString place dans une séquence d'échappement différemment :
| Caractère | Caractère placé dans une séquence d'échappement |
|---|---|
|
Tabulation |
|
|
Nouvelle ligne |
|
|
Retour chariot |
|
|
Saut de page |
|
|
Retour arrière |
|
|
Barre oblique inverse |
|
|
Guillemet double* |
|
|
Guillemet simple* |
|
- * Si
StringEscapeHandlingvaut TJsonStringEscapeHandling.EscapeHtml, WriteEscapedString place des guillemets simples et des guillemets doubles dans une séquence d'échappement en utilisant des séquences d'échappement Unicode.