Funções de conversão
As funções de conversão são usadas para converter elementos de dados e variáveis Jitterbit de um tipo para outro.
BinaryToHex
Declaração
string BinaryToHex(binary arg)
Sintaxe
BinaryToHex(<arg>)
Parâmetros obrigatórios
arg
: Valor binário a ser convertido
Descrição
Converte um valor binário em uma string representando os valores hexadecimais de cada byte. A string resultante será toda em minúsculas. O resultado desta chamada de função é indefinido se o argumento não for um valor binário.
Este é o inverso da função HexToBinary
.
Exemplos
// If $x is a binary value containing the bytes
// 0x17 0xA3 0xEF 0x80
BinaryToHex($x)
// returns the string "17a3ef80"
// If $y is an empty binary value
BinaryToHex($y)
// returns an empty string ("")
BinaryToUUID
Declaração
string BinaryToUUID(binary arg)
Sintaxe
BinaryToUUID(<arg>)
Parâmetros obrigatórios
arg
: Valor binário a ser convertido
Descrição
Converte um valor binário de 16 bytes em uma string no formato UUID padrão. A string resultante sempre estará em letras minúsculas.
Este é o inverso da função UUIDToBinary
.
Exemplos
// If $x is a binary value containing the 16 bytes
// 0x2F 0x46 0xDA 0xD9 0xE5 0xC2 0x45 0x7E 0xB1 0xFD 0xAD 0x1B 0x49 0xB9 0x9A 0xFF,
BinaryToUuid($x)
// returns the string "2f46dad9-e5c2-457e-b1fd-ad1b49b99aff"
Bool
Declaração
bool Bool(binary arg)
Sintaxe
Bool(<arg>)
Parâmetros obrigatórios
arg
: Valor binário a ser convertido
Descrição
Converte qualquer tipo de dado em um valor booleano (true
ou false
). Se os dados forem um número inteiro ou um número de ponto flutuante diferente de zero, o resultado será true
(1). As cordas "true"
e "T"
retornar verdadeiro independentemente do caso ("TRUE"
, "t"
, e "True"
todos retornam true
). Em todos os outros casos, o resultado é false
(0).
Exemplos
Bool(2);
// Returns true
Bool("true");
// Returns true
Bool("F");
// Returns false
Bool("text");
// Returns false
Date
Declaração
date Date(type arg)
Sintaxe
Date(<arg>)
Parâmetros obrigatórios
arg
: Valor a ser convertido para um objeto de data
Descrição
Converte o argumento para uma data. Se a entrada for uma string, ela deve ser formatada usando um dos formatos de data padrão, como "12/25/2018 12:30"
,"2018-12-25"
, "2018-12-25T12:30:00"
,"December 25, 2018"
, ou"DEC 25, 2018"
.
Se a string de entrada não estiver em um dos quatro formatos de data predefinidos (GeneralDate
, LongDate
, MediumDate
, ou ShortDate
) que pode ser lido pelo Date
função, ela pode ser convertida primeiro para um formato padrão pelo CVTDate
. Hora, minuto e segundo são opcionais.
Se a entrada for um inteiro ou um double, a entrada será interpretada como o número de segundos a partir de 12:00:00 AM de 1/1/1970 UTC, o início da era UNIX.
Observe que Date(Long(Now())) == Now()
.
Exemplos
Date("9/27/2007");
// Returns the date that represents 2007-09-27 00:00:00 UTC
Date(1190888288);
// Returns the date that represents 2007-09-27 10:18:08 UTC
// (also known as 2007-09-27T10:18:08)
Double
Declaração
double Double(type arg)
Sintaxe
Double(<arg>)
Parâmetros obrigatórios
arg
: Valor a ser convertido
Descrição
Um esforço máximo é feito para converter o argumento para um double. Se o tipo de dado que está sendo avaliado não puder ser convertido para um double, a função retornará 0. Se o dado que está sendo avaliado for um registro de data ou hora, o resultado será o número de segundos a partir de 12:00:00 AM de 1/1/1970 UTC (o início da época UNIX).
Exemplos
Double(19.9874);
// Returns a value of 19.987400
Double(9/15);
// Returns a value of 0
Double("5.5a");
// Returns a value of 5.5
Double("abcd");
// Returns 0
Double(Date("2007-09-27T10:18:08"));
// Returns 1190888288
Float
Declaração
float Float(type arg)
Sintaxe
Float(<arg>)
Parâmetros obrigatórios
arg
: Valor a ser convertido
Descrição
Um esforço máximo é feito para converter o argumento para um float. Se o tipo de dado que está sendo avaliado não puder ser convertido para um float, a função retornará 0. Se os dados que estão sendo avaliados forem um registro de data ou hora, o resultado será o número de segundos a partir de 12:00:00 AM de 1/1/1970 UTC (o início da época UNIX).
Exemplos
Float(345);
// Returns a value of 345
Float("3.141592");
// Returns a value of 3.14159
Float("5.5a");
// Returns a value of 5.5
Float("abcd");
// Returns 0
Float("2007-09-27T10:18:08");
// Returns 1.19089e+09
HexToBinary
Declaração
string HexToBinary(string arg)
Sintaxe
HexToBinary(<arg>)
Parâmetros obrigatórios
arg
: Hex-string a ser convertida
Descrição
Converte uma string hexadecimal em um valor binário. O valor resultante conterá os bytes representados por cada par de caracteres na string de entrada. A string de entrada não diferencia maiúsculas de minúsculas.
Este é o inverso da função BinaryToHex
.
Exemplos
HexToBinary("17a3ef80");
// Returns a binary value containing the bytes 0x17 0xA3 0xEF 0x80
HexToBinary("17A3EF80");
// Returns a binary value containing the bytes 0x17 0xA3 0xEF 0x80
HexToBinary("");
// Returns an empty binary value
HexToString
Declaração
string HexToString(string arg)
Sintaxe
HexToString(<arg>)
Parâmetros obrigatórios
arg
: Elemento hexadecimal a ser convertido
Descrição
Converte uma string hexadecimal UTF-8 em um valor de string. O valor resultante conterá os caracteres representados por cada par de caracteres na string de entrada. A string de entrada não diferencia maiúsculas de minúsculas. Como os caracteres de entrada são hexadecimais, os pares de caracteres da string de entrada devem ser limitados ao intervalo de "00" a "FF".
Para converter o valor da string de saída de uma string hexadecimal UTF-16, defina jitterbit.scripting.hex.enable_unicode_support
para true
acima na cadeia desta função ao usar versões de agente 10.71 / 11.9 ou posteriores.
Este é o inverso da função StringToHex
.
Exemplos
HexToString("6E6577");
// Returns "new"
HexToString("00");
// Returns an empty string ("")
HexToString("c2a7");
// Returns "§" (UTF-8)
HexToString("a7");
// Returns "§" if jitterbit.scripting.hex.enable_unicode_support is set to true (UTF-16), otherwise returns "�" (UTF-8)
Int
Declaração
int Int(type arg)
Sintaxe
Int(<arg>)
Parâmetros obrigatórios
arg
: Valor a ser convertido
Descrição
Um esforço máximo é feito para converter o argumento em um inteiro. Se o tipo de dado que está sendo avaliado não puder ser convertido em um inteiro, a função retornará 0. Se o dado que está sendo avaliado for um registro de data ou hora, o resultado será o número de segundos a partir de 12:00:00 AM de 1/1/1970 UTC (o início da época UNIX).
Exemplos
Int("3.141592");
// Returns a value of 3
Int("5a");
// Returns a value of 5
Int("5");
// Returns a value of 5
Int("abcd");
// Returns 0
Int(Date("2007-09-27 10:18:08"));
// Returns a value of 1190888288
Long
Declaração
long Long(type arg)
Sintaxe
Long(<arg>)
Parâmetros obrigatórios
arg
: Valor a ser convertido
Descrição
Um esforço máximo é feito para converter o argumento em um inteiro longo. Se o tipo de dado que está sendo avaliado não puder ser convertido em um inteiro longo, a função retornará 0. Se o dado que está sendo avaliado for um registro de data ou hora, o resultado será o número de segundos a partir de 12:00:00 AM de 1/1/1970 UTC (o início da época UNIX).
Exemplos
Long("3.141529");
// Returns a value of 3
Long("5a");
// Returns a value of 5
Long("5");
// Returns a value of 5
Long(1234567890.123456);
// Returns a value of 1234567890
Long("abcd");
// Returns a value of 0
Long(Date("2007-09-27 10:18:08"));
// Returns a value of 1190888288
String
Declaração
string String(type arg)
Sintaxe
String(<arg>)
Parâmetros obrigatórios
arg
: Valor a ser convertido
Descrição
Converte qualquer tipo de dado em uma string. Se os dados que estão sendo avaliados já forem uma string, nenhuma conversão ocorrerá.
Se o tipo de dado for um registro de data ou hora, a data será retornada no formato ISO 8601 (aaaa-mm-dd HH:MM:SS). Para outros formatos de data, use as funções CVTDate
ou FormatDate
.
Dados binários que contêm bytes nulos são retornados como uma string representando os valores hexadecimais de cada byte, assim como se BinaryToHex
foi chamado. Se os dados binários não contiverem bytes nulos, uma representação de string será retornada com a suposição de que os bytes representam uma string codificada em UTF-8. Se você sempre quiser uma representação hexadecimal, use o BinaryToHex
função em vez disso.
Para um valor booleano, as strings "1" ou "0" são retornadas.
Exemplos
String("98");
// Returns a value of "98"
String(98);
// Returns a value of "98"
String(true);
// Returns a value of "1"
String(Date("2007-09-27T10:18:08"));
// Returns a value of "2007-09-27 10:18:08"
String(HexToBinary("6E6577"));
// Returns a value of "new"
StringToHex
Declaração
string StringToHex(string arg)
Sintaxe
StringToHex(<arg>)
Parâmetros obrigatórios
arg
: Elemento de string a ser convertido
Descrição
Converte um valor de string em uma string hexadecimal UTF-8. A string resultante será toda em minúsculas. O resultado desta chamada de função é indefinido se o argumento não for um valor de string.
Para converter o valor de string de entrada em uma string hexadecimal UTF-16, defina jitterbit.scripting.hex.enable_unicode_support
para true
acima na cadeia desta função ao usar versões de agente 10.71 / 11.9 ou posteriores.
Este é o inverso da função HexToString
.
Exemplos
StringToHex("new");
// Returns "6e6577"
StringToHex("");
// Returns an empty string ("")
StringToHex("§");
// Returns "a7" if jitterbit.scripting.hex.enable_unicode_support is set to true (UTF-16), otherwise returns "c2a7" (UTF-8)
UUIDToBinary
Declaração
binary UUIDToBinary(string arg)
Sintaxe
UUIDToBinary(<arg>)
Parâmetros obrigatórios
arg
: Elemento de string a ser convertido
Descrição
Converte uma string UUID em um valor binário contendo os bytes correspondentes. O tamanho da string de entrada deve ser 36 caracteres. O formato da entrada deve ser nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn
onde cada par (nn
) é a representação hexadecimal do byte correspondente. O caso da string de entrada não importa. O valor binário retornado tem 16 bytes de comprimento.
Este é o inverso da função BinaryToUID
.
Exemplos
UuidToBinary("2f46dad9-e5c2-457e-b1fd-ad1b49b99aff")
// returns a binary value with the bytes
// 0x2F 0x46 0xDA 0xD9 0xE5 0xC2 0x45 0x7E 0xB1 0xFD 0xAD 0x1B 0x49 0xB9 0x9A 0xFF