Notă
Accesul la această pagină necesită autorizare. Puteți încerca să vă conectați sau să modificați directoarele.
Accesul la această pagină necesită autorizare. Puteți încerca să modificați directoarele.
Notă
Grupurile de interes din comunitate s-au mutat acum din Yammer în Microsoft Viva Engage. Pentru a vă alătura unei comunități Viva Engage și a participa la cele mai recente discuții, completați Request acces la Finanțe și Operațiuni Viva Engage Comunitate și alegeți comunitatea la care doriți să vă asociați.
Acest articol descrie funcțiile runtime de conversie.
any2Date
Efectuează conversia unei valori de orice tip într-o valoare dată .
date any2Date(anytype object)
Parametri
| Parametru | Descriere |
|---|---|
| obiect | Este valoarea de convertit la o dată. |
Valoare returnată
O valoare de dată .
Observații
Parametrul obiectului poate fi majoritatea tipurilor de date, dar obțineți rezultate utile atunci când este de tipul str sau int . Conținutul nepotrivit generează o eroare la momentul rulării.
Exemplu
static void any2DateExample(Args _args)
{
date myDate;
str s;
int i;
s = "2010 6 17"; // A string object, of yyyy mm dd.
myDate = any2Date(s);
Global::info(strFmt("%1 is output, from input of "2010 6 17"", myDate));
i = 40361; // An int object, which represents the number of days from 1900/01/01.
myDate = any2Date(i);
Global::info(strFmt("%1 is output, from input of 40361", myDate));
}
/**** Infolog display.
Message (04:44:15 pm)
6/17/2010 is output, from input of "2010 6 17"
7/4/2010 is output, from input of 40361
****/
any2Enum
Efectuează conversia unei valori de orice tip în valoarea proprietății Name a unui element din enumerarea țintă.
enum any2Enum(anytype object)
Parametri
| Parametru | Descriere |
|---|---|
| obiect | Valoarea de potrivit proprietății Value a unui element din enumerarea țintă. |
Valoare returnată
Valoarea proprietății Name pentru elementul din enumerarea țintă are o proprietate Value care se potrivește cu parametrul de intrare.
Observații
Parametrul obiect poate fi majoritatea tipurilor de date, dar primiți date utile doar atunci când utilizați un parametru al tipului str sau int . Acest parametru de obiect de intrare se referă la proprietatea Valoare a unui element individual din enumerarea țintă.
Exemplu
static void any2EnumExample(Args _args)
{
NoYes myNoYes; // NoYes is an enum.
int i;
str s;
i = 0; // An int that will be converted.
myNoYes = any2Enum(i);
Global::info(strfmt("'%1' - is the output, from input of the %2 as int.", myNoYes, i));
s = "1"; // A str that will be converted.
myNoYes = any2Enum(s);
Global::info(strfmt("'%1' - is the output, from input of the %2 as str.", myNoYes, s));
/**** Infolog display.
Message (01:05:32 pm)
'No' - is the output, from input of the 0 as int.
'Yes' - is the output, from input of the 1 as str.
****/
}
any2Guid
Efectuează conversia oricărui obiect tip specificat într-un obiect GUID.
guid any2Guid(anytype object)
Parametri
| Parametru | Descriere |
|---|---|
| obiect | Valoarea de convertit la un obiect GUID. |
Valoare returnată
Un obiect GUID.
any2Int
Efectuează conversia unei valori de orice tip într-o valoare int .
int any2Int(anytype object)
Parametri
| Parametru | Descriere |
|---|---|
| obiect | Este valoarea de convertit. |
Valoare returnată
O valoare int .
Observații
Parametrul obiect poate fi majoritatea tipurilor de date, dar obțineți date utile doar atunci când utilizați parametri de enumerare, reali sau str .
Exemplu
static void any2IntExample(Args _args)
{
int myInt;
str s;
NoYes a;
real r;
s = "31";
myInt = any2Int(s);
Global::info(strfmt("%1 is the output, from input of 31 as a str value.", myInt));
a = NoYes::No;
myInt = any2Int(a);
Global::info(strfmt("%1 is the output, from input of NoYes::No as an enum value.", myInt));
r = 5.34e2;
myInt = any2Int(r);
Global::info(strfmt("%1 is the output, from the input of 5.34e2 as a real value.", myInt));
}
/**** Infolog display.
Message (02:23:59 pm)
31 is the output, from input of 31 as a str value.
0 is the output, from input of NoYes::No as an enum value.
534 is the output, from the input of 5.34e2 as a real value.
****/
any2Int64
Efectuează conversia unui obiect de tip într-un obiect int64 .
int64 any2Int64(anytype object)
Parametri
| Parametru | Descriere |
|---|---|
| obiect | Obiectul de orice tip de convertit. |
Valoare returnată
Un obiect int64 .
any2Real
Efectuează conversia unei valori de orice tip într-o valoare reală .
real any2Real(anytype object)
Parametri
| Parametru | Descriere |
|---|---|
| obiect | Este valoarea de convertit. |
Valoare returnată
O valoare reală .
Observații
Parametrul obiectului poate fi majoritatea tipurilor de date, dar obțineți rezultate utile pentru elementele de intrare ale datei, int, enumerare și str tipuri.
Exemplu
static void any2RealExample(Args _args)
{
real myReal;
str s;
int i;
NoYes a;
s = "5.12";
myReal = any2Real(s);
Global::info(strfmt("%1 is the output from the input of 5.12 as a str object", myReal));
i = 64;
myReal = any2Real(i);
Global::info(strfmt("%1 is the output from the input of 64 as an int object", myReal));
a = NoYes::Yes;
myReal = any2Real(a);
Global::info(strfmt("%1 is the output from the input of NoYes::Yes as an enum object", myReal));
}
/****Infolog display.
Message (02:43:57 pm)
5.12 is the output from the input of 5.12 as a str object
64.00 is the output from the input of 64 as an int object
1.00 is the output from the input of NoYes::Yes as an enum object
****/
any2Str
Efectuează conversia unei valori de tip într-o valoare str .
str any2Str(anytype object)
Parametri
| Parametru | Descriere |
|---|---|
| obiect | Este valoarea de convertit. |
Valoare returnată
O valoare str .
Observații
Parametrul obiectului poate fi majoritatea tipurilor de date, dar obțineți rezultate utile din elementele de intrare ale tipurilor de dată, int și enumerare .
Exemplu
static void any2StrExample(Args _args)
{
str myStr;
anytype a;
a = "Any to string";
myStr = any2Str(a);
Global::info(strFmt("%1 is output, from input of Any to string as a str value", myStr));
a = NoYes::Yes;
myStr = any2Str(a);
Global::info(strFmt("%1 is output, from input of NoYes::Yes as an enumeration", myStr));
}
/****Infolog Display
Message (09:08:46 am)
Any to string is output, from input of Any to string as a str value
1 is output, from input of NoYes::Yes as an enumeration
****/
anytodate
Vedeți any2Date.
anytoenum
Vedeți any2Enum.
anytoguid
Vezi any2Guid.
oricetoint
Vedeți any2Int.
anytoint64
Vedeți any2Int64.
anytoreal
Vezi any2Real.
oricetostr
Vezi any2Str.
char2Num
Efectuează conversia unui caracter dintr-un șir în valoarea ASCII a caracterului.
int char2Num(str text, int position)
Parametri
| Parametru | Descriere |
|---|---|
| text | Șirul care conține caracterul. |
| poziție | Poziția caracterului din șir. |
Valoare returnată
Valoarea ASCII a caracterului ca obiect int .
Observații
char2Num("ABCDEFG",3); //Returns the numeric value of C, which is 67.
char2Num("ABCDEFG",1); //Returns the numeric value of A, which is 65.
date2Num
Efectuează conversia unei date într-un număr întreg care corespunde numărului de zile de la 1 ianuarie 1900.
int date2Num(date _date)
Parametri
| Parametru | Descriere |
|---|---|
| _dată | Data de conversie. |
Valoare returnată
Numărul de zile dintre 1 ianuarie 1900 și data specificată.
Exemplu
//Returns the value377.
date2Num(1311901);
static void date2NumExample(Args _arg)
{
date d = today();
int i;
i = date2Num(d);
print i;
}
data2Str
Efectuează conversia datei specificate într-un șir.
str date2Str(date date, int sequence, int day, int separator1, int month, int separator2, int year [, int flags = DateFlags::None])
Parametri
| Parametru | Descriere |
|---|---|
| date | Data de conversie. |
| secvență | Un număr din trei cifre care indică secvența pentru componentele datei: 1 pentru zi, 2 pentru lună și 3 pentru an. |
| zi | O valoare de enumerare care indică formatul pentru componenta zi a datei. |
| separator1 | O valoare de enumerare care indică separatorul de utilizat între primele două componente ale datei. |
| lună | O valoare de enumerare care indică formatul pentru componenta lună a datei. |
| separator2 | O valoare de enumerare care indică separatorul de utilizat între ultimele două componente ale datei. |
| an | O valoare de enumerare care indică formatul pentru componenta de an a datei. |
| Steaguri | O valoare de enumerare DateFlags care indică dacă setările de limbă de pe computerul local trebuie utilizate pentru a calcula secvența corectă de la stânga la dreapta sau de la dreapta la stânga din șirul returnat. |
Valoare returnată
Este un șir care reprezintă data specificată.
Observații
MorphX alocă valori valide parametrilor de formatare dacă valorile specificate nu sunt valide. Pentru a utiliza formatul de dată specificat de utilizator în Setări regionale, utilizați funcția strFmt sau date2Str și specificați -1 în toți parametrii de formatare. Atunci când setările regionale controlează formatul de dată, setările se pot modifica de la utilizator la utilizator. Dacă -1 este utilizat pentru fiecare parametru separator , ambele separatori sunt setați implicit la Setări regionale. Valorile parametrului de secvență trebuie să fie orice număr format din trei cifre care conține exact o apariție a fiecărei cifre 1, 2 și 3. Cifrele 1, 2 și 3 reprezintă ziua, luna și, respectiv, anul. De exemplu, 321 produce anul secvenței, luna și ziua. Sau valoarea poate fi -1 pentru a utiliza Setări regionale. Nu utilizați un tip de enumerare pentru acest parametru, deoarece numerele cum ar fi 321 depășesc intervalul de valori valide pentru valorile de enumerare, care este între 0 și 250, inclusiv. Valoarea implicită a parametrului semnalizări este valoarea DateFlags::Fără enumerare, ceea ce înseamnă că nu se efectuează nicio procesare secvență de la stânga la dreapta sau de la dreapta la stânga.
Exemplu
Următorul exemplu afișează data curentă în secvența de an, lună și zi.
static void Job2(Args _args)
{
date currentDate = today();
str s;
int iEnum;
s = date2Str
(currentDate,
321,
DateDay::Digits2,
DateSeparator::Hyphen, // separator1
DateMonth::Digits2,
DateSeparator::Hyphen, // separator2
DateYear::Digits4
);
info("Today is: " + s);
}
/** Example Infolog output
Message (12:36:21 pm)
Today is: 2009-01-13
**/
datetime2Str
Efectuează conversia unei valori utcdatetime într-un șir.
str datetime2Str(utcdatetime datetime [, int flags = DateFlags::None])
Parametri
| Parametru | Descriere |
|---|---|
| datetime | Valoarea utcdatetime de convertit. |
| Steaguri | O valoare de enumerare DateFlags care indică dacă se utilizează setările locale pentru ieșirea de la dreapta la stânga. |
Valoare returnată
Un șir care reprezintă valoarea utcdatetime specificată ca parametru dată-oră .
Observații
Intrare dată-oră nulă
Dacă specificați valoarea minimă utcdatetime pentru parametrul datetime , funcția datetime2Str o tratează ca valoare de intrare nulă. Această valoare face ca funcția să returneze un șir gol. Metoda DateTimeUtil::minValue returnează data-ora 1900-01-01T00:00:00. Funcția tratează această valoare minimă ca null.
Setări locale de la dreapta la stânga
În mod implicit, această funcție generează șirul în secvența de la stânga la dreapta, unde porțiunea de an este cea mai din stânga. Totuși, dacă setați parametrul semnalizări la Valoarea DateFlags::FormatToate enumerarea, funcția generează șirul în secvența de la dreapta la stânga atunci când setările locale sunt configurate pentru de la dreapta la stânga. Setările regionale nu afectează formatul metodei toStr a clasei DateTimeUtil .
Exemplu
static void jobTestDatetime2str( Args _args )
{
utcdatetime utc2 = 1959-06-17T15:44:33;
str s3;
s3 = datetime2Str( utc2 );
info( s3 );
}
enumerare2Str
Efectuează conversia textului enumerat specificat într-o reprezentare a caracterelor.
str enum2Str(enum enum)
Parametri
| Parametru | Descriere |
|---|---|
| enumerare | Este textul enumerat de convertit. |
Valoare returnată
Valoarea enumerarii ca șir.
Exemplu
Următorul exemplu returnează șirul "Ne inclus". Acest șir este eticheta pentru valoarea IncludeNot a tipului de enumerare ListCode .
static void enum2StrExample(Args _arg)
{
ListCode l;
l = ListCode::IncludeNot;
print enum2Str(l);
}
guid2Str
Efectuează conversia obiectului GUID specificat în șirul echivalent.
str guid2String(guid _uuid)
Parametri
| Parametru | Descriere |
|---|---|
| _uuid | Obiectul GUID de convertit. |
Valoare returnată
Este echivalentul șirului obiectului GUID specificat.
Exemplu
static void guid2StrExample()
{
guid _guid;
str stringGuid;
_guid = Global::guidFromString("{12345678-1234-1234-1234-123456789abc}");
print strfmt("GUID is %1", _guid);
stringGuid = guid2str(_guid);
info("String GUID is " + stringGuid);
}
/**** Output to Infolog
String GUID is {12345678-1234-1234-1234-123456789ABC}
****/
int2Str
Efectuează conversia unui număr întreg în șirul echivalent.
str int2Str(int integer)
Parametri
| Parametru | Descriere |
|---|---|
| întreg | Este numărul întreg de convertit. |
Valoare returnată
O reprezentare șir a întregului.
Exemplu
static void int2StrExample(Args _arg)
{
print "This is int2Str, value is " + int2Str(intMax());
print "This is int642Str, value is " + int642Str(int64Max());
}
int642Str
Efectuează conversia parametrului întreg specificat în șirul text echivalent.
str int642Str(int64 integer)
Parametri
| Parametru | Descriere |
|---|---|
| întreg | The int64 to convert to a string. |
Valoare returnată
Șirul text echivalent al parametrului întreg .
Exemplu
static void example()
{
print "This is int2Str, value is " + int2Str(intMax());
print "This is int642Str, value is " + int642Str(int64Max());
}
num2Char
Efectuează conversia unui număr întreg în caracterul ASCII corespunzător.
str num2Char(int figure)
Parametri
| Parametru | Descriere |
|---|---|
| cifră | Este numărul întreg de convertit într-un caracter. |
Valoare returnată
Caracterul care corespunde întregului specificat.
Exemplu
static void num2CharExample(Args _arg)
{
str s;
s = num2Char(42);
// Prints an asterisk * -the character represented by 42.
print s;
}
num2Date
Regăsește data care corespunde numărului specificat de zile după 1 ianuarie 1900.
date num2Date(int _days)
Parametri
| Parametru | Descriere |
|---|---|
| _Zile | Numărul de zile după 1 ianuarie 1900 pentru a returna data. Notă: Prima dată validă este 1 ianuarie 1901. Prin urmare, funcția num2Date nu returnează o dată validă decât dacă _days este mai mare de 365. |
Valoare returnată
Data care este numărul de zile specificat de parametrul _days după 1 ianuarie 1900.
Observații
num2Date(366); //Returns the date 01/01/1901 (1 January 1901).
num2Str
Efectuează conversia unui număr real într-un șir.
str num2Str(real number, int character, int decimals, int separator1, int separator2)
Parametri
| Parametru | Descriere |
|---|---|
| număr | Este numărul real de convertit într-un șir. |
| caracter | Numărul minim de caractere care sunt necesare în text. |
| Zecimale | Este numărul necesar de zecimale. |
| separator1 | O valoare de enumerare ZecimalSeparator . |
| separator2 | O valoare de enumerare MiiSeparator . |
Valoare returnată
Este un șir care reprezintă numărul.
Observații
Pentru parametrul zecimale , valoarea maximă este 16. Dacă utilizați un număr mai mare, metoda primește în schimb o valoare pentru parametrul zecimale de pe computerul local. În ambele cazuri, are loc rotunjirea. Iată valorile posibile de enumerare pentru parametrul separator1 :
- 99 – Auto (setările de formatare ale utilizatorului determină ce separator zecimal este utilizat), valoarea de enumerare ZecimalSeparator::Auto
- 1 – Punct (.), valoare enumerare zecimalSeparator::D ot
- 2 – Virgulă (,), valoare enumerare ZecimalSeparator::Virgulă
Iată valorile posibile pentru parametrul separator2 :
- 99 – Auto (setările de formatare ale utilizatorului determină ce mie de separatori se utilizează)
- 0 – Fără (fără separator de mii), valoare de enumerare MiiSeparator::Fără
- 1 – Punct (.), valoare enumerare MiiSeparator::D ot
- 2 – Virgulă (,), valoare enumerare MiiSeparator::Virgulă
- 3 – Apostrof ('), valoare enumerare MiiSeparator::Apostrof
- 4 – Spațiu ( ), valoare de enumerare MiiSeparator::Spațiu
Exemplu
În următorul exemplu de cod, primul apel la metoda num2str furnizează 16 pentru parametrul zecimale , iar al doilea apel furnizează 17.
static void Job_Num2Str(Args _args)
{
real realNum = 0.1294567890123456777; // 19 decimals places.
info(Num2Str(realNum, 0, 16, DecimalSeparator::Dot, ThousandSeparator::Space)); // 16 decimal places
info(Num2Str(realNum, 0, 17, DecimalSeparator::Dot, ThousandSeparator::Space)); // 17 decimal places
}
Ieșire
Mesajele se află în următorul grafic de informații. Primul număr din ieșire conține 16 cifre zecimale, în timp ce al doilea număr conține doar două cifre zecimale.
Message (10:18:12)
0.1294567890123457
0.13
str2Date
Efectuează conversia șirului specificat într-o valoare dată .
date str2Date(str _text, str _sequence)
Parametri
| Parametru | Descriere |
|---|---|
| _Text | Șirul de convertit la o valoare dată . |
| _secvență | Un număr întreg de trei cifre care descrie pozițiile zilei, lunii și anului din șir pentru conversie. |
Valoare returnată
O valoare de dată .
Observații
Utilizați următoarele valori pentru a specifica pozițiile zilei, lunii și anului în parametrul _sequence :
- Ziua: 1
- Lună: 2
- An: 3
De exemplu, dacă secvența din șir este lună, an, apoi zi, parametrul _sequence trebuie să fie 231. Se returnează o dată 0 (zero) dacă parametrii de intrare specifică o dată nevalidă. Următoarele două exemple specifică o dată nevalidă.
str2Date("31/12/44", 123) // Year must be four digits to reach the minimum of January 1 1901.
str2Date("31/12/2044", 213) // 213 means the month occurs first in the string, but 31 cannot be a month.
Exemplu
static void str2DateExample(Args _arg)
{
date d;
d = str2Date("22/11/2007", 123);
print d;
}
str2Datetime
Generează o valoare utcdatetime din șirul specificat de informații despre dată și oră.
utcdatetime str2datetime( str text, int sequence )
Parametri
| Parametru | Descriere |
|---|---|
| text | Șirul de convertit la o valoare utcdatetime . |
| secvență | Un număr din trei cifre care descrie secvența componentelor de dată din parametrul text . |
Valoare returnată
O valoare utcdatetime care reprezintă data și ora specificate.
Observații
Cerințele de sintaxă pentru porțiunea de dată a parametrului de text sunt flexibile. Varietatea de formate valide este la fel ca în funcția date2str . Fiecare dintre următoarele apeluri către str2datetime este valid și toate produc aceeași ieșire.
utc3 = str2datetime( "1985/02/25 23:04:59" ,321 );
utc3 = str2datetime( "Feb-1985-25 11:04:59 pm" ,231 );
utc3 = str2datetime( "2 25 1985 11:04:59 pm" ,123 );
Fiecare componentă a datei calendaristice este reprezentată de o cifră din parametrul secvenței :
- 1 – Ziua
- 2 – Lună
- 3 – An
De exemplu, anul, luna, comanda de zi este 321. Toate valorile valide conțin fiecare dintre aceste trei cifre exact o dată. Dacă valoarea parametrului de secvență nu este validă, setările regionale sunt utilizate pentru a interpreta parametrul text de intrare. Dacă parametrii de intrare descriu o dată și o oră nevalidă, se returnează un șir gol.
Exemplu
static void JobTestStr2datetime( Args _args )
{
utcdatetime utc3;
str sTemp;
utc3 = str2datetime( "1985/02/25 23:04:59" ,321 );
sTemp = datetime2str( utc3 );
print( "sTemp == " + sTemp );
}
str2Enum
Regăsește elementul de enumerare pentru care valoarea proprietății Etichetă localizată se potrivește cu șirul de intrare.
enum str2Enum(enum _type, str _text)
Parametri
| Parametru | Descriere |
|---|---|
| _tip | O variabilă pe care o declarați ca tip de enumerare . |
| _Text | Textul proprietății Etichetă localizată a elementului țintă din enumerare. |
Valoare returnată
Un element al enumerarii țintă, care reprezintă, de asemenea, un int.
Observații
Enumerarea funcției asociate2str returnează valoarea unei proprietăți Label dintr-un element din enumerare. Valoarea returnată de funcția enum2str poate fi intrarea pentru parametrul _type al funcției str2enum . O valoare corespunzătoare pentru parametrul _text este enum2Str(BankAccountType::SavingsAccount). Fiecare element al unei enumerari are o proprietate Name și o proprietate Label . Într-o instalare nouă, valorile Nume sunt aproape întotdeauna cuvinte în limba engleză. În ediția engleză, valoarea proprietății Label este aproape întotdeauna aceeași cu valoarea Name . Cu toate acestea, în edițiile non-engleză, valorile Etichetă sunt localizate și, prin urmare, nu se potrivesc cu valorile Nume .
Exemplu
Pentru a evita nepotriviri de șiruri care localizează la alte limbi vorbite cauze, utilizați funcția enum2str pentru a genera intrarea în funcția str2enum . Următorul exemplu arată modul potrivit de a utiliza funcția str2enum împreună cu funcția enum2str .
static void str2Enum_AcrossLangs(Args _arg)
{
BankAccountType bat;
str sEnumValueLabelLocalized;
int nInt;
// enum2str.
sEnumValueLabelLocalized = enum2str(BankAccountType::SavingsAccount);
info("Localized friendly string: "
+ sEnumValueLabelLocalized);
// str2enum.
bat = str2Enum(bat, sEnumValueLabelLocalized);
nInt = bat;
info("nInt = " + int2str(nInt));
/********** Actual output:
Message (04:32:12 pm)
Localized friendly string: Savings account
nInt = 1
**********/
}
str2Guid
Efectuează conversia unui șir într-un obiect GUID.
Guid str2Guid(str text)
Parametri
| Parametru | Descriere |
|---|---|
| Guid | Un șir care reprezintă un GUID. |
Valoare returnată
Un GUID pe care îl reprezintă șirul de intrare.
Observații
De exemplu, o valoare validă pentru parametrul GUID este {12345678-1234-abCD-3456-123456789012}, cu sau fără acolade.
str2Int
Efectuează conversia unui șir în întreg echivalent.
int str2Int(str _text)
Parametri
| Parametru | Descriere |
|---|---|
| _Text | Șirul de convertit într-un întreg. |
Valoare returnată
Este echivalentul întreg al șirului specificat.
Exemplu
static void str2IntExample(Args _arg)
{
int i;
i = str2Int("1234567890");
print "i = " + int2Str(i);
}
str2Int64
Efectuează conversia unui șir într-o valoare Int64 .
int str2Int64(str text)
Parametri
| Parametru | Descriere |
|---|---|
| text | Șirul de convertit. |
Valoare returnată
Valoarea Int64 a șirului specificat.
Exemplu
static void str2Int64Example(Args _args)
{
str myStr;
str tooBig;
Int64 myInt64;
myStr = "1234567890";
tooBig = int642str(int64Max()+1);
myInt64 = str2Int64(mystr);
print strfmt ("int64: %1",myInt64);
myInt64 = str2Int64(tooBig);
print strfmt ("Too big int64: %1",myInt64);
}
str2Num
Efectuează conversia unui șir într-un număr real.
real str2Num(str _text)
Parametri
| Parametru | Descriere |
|---|---|
| _Text | Șirul de convertit într-un număr real. |
Valoare returnată
Numărul real dacă șirul specificat conține un număr valid; altfel, 0 (zero).
Observații
Următoarele exemple vă arată cum să utilizați această funcție.
str2Num("123.45") returns the value 123.45.
str2Num("a123") returns the value 0.0.
str2Num("123a") returns the value 123.00.
Scanarea are loc de la stânga la dreapta și se termină atunci când un caracter nu poate fi convertit într-o parte a unui număr real.
Exemplu
static void str2NumToReal(Args _arg)
{
real r;
str s;
r = str2Num("3.15");
s = strFmt("r = %1", r);
info(s);
}
/*** Infolog output.
Message_@SYS14327 (02:36:12 pm)
r = 3.15
***/
static void str2NumExponentialSyntax(Args _args)
{
Qty qty1, qty2, qty3;
qty1 = str2num('1e-3'); // Bad syntax by the user.
qty2 = str2num('1.e-3');
qty3 = str2num('1.0e-3');
info(strfmt('Result: %1; Expected: %2', num2str(qty1, 0,3,2,0), '0.001'));
info(strfmt('Result: %1; Expected: %2', num2str(qty2, 0,3,2,0), '0.001'));
info(strfmt('Result: %1; Expected: %2', num2str(qty3, 0,3,2,0), '0.001'));
}
/*** Infolog output. The first result differs from expectations.
Message_@SYS14327 (02:20:55 pm)
Result: 1,000; Expected: 0.001
Result: 0,001; Expected: 0.001
Result: 0,001; Expected: 0.001
***/
str2Time
Efectuează conversia unui șir într-o valoare timeOfDay .
int str2Time(str _text)
Parametri
| Parametru | Descriere |
|---|---|
| _Text | Este timpul de utilizat pentru a calcula numărul de secunde de la miezul nopții. |
Valoare returnată
Numărul de secunde dintre miezul nopții și parametrul _text ; altfel, -1.
Observații
str2Time("05:01:37") //Returns the value 18097.
str2Time("7 o'clock") //Returns the value -1.
Exemplu
static void str2TimeExample(Args _arg)
{
int i;
i = str2Time("11:30");
print i;
}
time2Str
Efectuează conversia unei valori timeOfDay într-un șir care include ore, minute și secunde.
str time2Str(int _time, int _separator, int _timeFormat)
Parametri
| Parametru | Descriere |
|---|---|
| _Oră | O valoare timeOfDay . |
| _separator | O valoare de enumerare TimeSeparator care indică caracterele dintre orele, minutele și secundele din șirul de ieșire. |
| _timeFormat | O valoare de enumerare TimeFormat care indică dacă se utilizează un ceas de 12 ore sau un ceas de 24 de ore. |
Valoare returnată
Este un șir care reprezintă ora specificată.
Observații
Valoarea parametrului _time este numărul de secunde de la miezul nopții.
Exemplu
static void TimeJob4(Args _args)
{
timeOfDay theTime = timeNow();
info( time2Str(theTime, TimeSeparator::Colon, TimeFormat::AMPM) );
}
/**
Message (04:33:56 pm)
04:33:56 pm
**/
uint2Str
Efectuează conversia unui număr întreg într-un șir. Această funcție presupune că întregul este nesemnat.
str uint2Str(int integer)
Parametri
| Parametru | Descriere |
|---|---|
| întreg | Este numărul întreg de convertit. |
Valoare returnată
Este echivalentul șirului întreg nesemnat specificat.
Observații
Utilizați această funcție în locul funcției int2str pentru numere întregi foarte mari, cum ar fi ID-uri de înregistrare.
info(int2str(3123456789)); //returns -1171510507 as a string.
info(uint2str(3123456789)); //returns 3123456789 as a string.