Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Uwaga / Notatka
Grupy zainteresowań społeczności zostały teraz przeniesione z usługi Yammer do aplikacji Microsoft Viva Engage. Aby dołączyć do społeczności Viva Engage i wziąć udział w najnowszych dyskusjach, wypełnij formularz Żądanie dostępu do aplikacji Finance and Operations Viva Engage Community i wybierz społeczność, którą chcesz dołączyć.
W tym artykule opisano funkcje czasu wykonywania konwersji.
any2Date
Konwertuje wartość typu anytype na wartość daty .
date any2Date(anytype object)
Parametry
| Parameter | Description |
|---|---|
| obiekt | Wartość, która ma być konwertowana na datę. |
Wartość zwracana
Wartość daty .
Uwagi
Parametr obiektu może być większości typów danych, ale przydatne dane wyjściowe są uzyskiwane, gdy jest to typ ciągu lub int . Nieodpowiednia zawartość generuje błąd czasu wykonywania.
Example
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
Konwertuje wartość anytype na wartość właściwości Name elementu w wyliczeniem docelowym.
enum any2Enum(anytype object)
Parametry
| Parameter | Description |
|---|---|
| obiekt | Wartość zgodna z właściwością Value elementu w wyliczeniem docelowym. |
Wartość zwracana
Wartość właściwości Name dla niezależnie od elementu w wyliczenia docelowego ma właściwość Value zgodną z parametrem wejściowym.
Uwagi
Parametr obiektu może być większości typów danych, ale przydatne dane są uzyskiwane tylko wtedy, gdy używasz parametru typu str lub int . Ten parametr obiektu wejściowego odwołuje się do właściwości Value pojedynczego elementu w wyliczeniem docelowym.
Example
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
Konwertuje określony obiekt anytype na obiekt GUID.
guid any2Guid(anytype object)
Parametry
| Parameter | Description |
|---|---|
| obiekt | Wartość, która ma być konwertowana na obiekt GUID. |
Wartość zwracana
Obiekt GUID.
any2Int
Konwertuje wartość typu anytype na wartość int .
int any2Int(anytype object)
Parametry
| Parameter | Description |
|---|---|
| obiekt | Wartość do konwersji. |
Wartość zwracana
Wartość int .
Uwagi
Parametr obiektu może być większości typów danych, ale przydatne dane są uzyskiwane tylko wtedy, gdy używasz parametrów typu wyliczenia, rzeczywistego lub str .
Example
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
Konwertuje obiekt anytype na obiekt int64 .
int64 any2Int64(anytype object)
Parametry
| Parameter | Description |
|---|---|
| obiekt | Obiekt anytype do konwersji. |
Wartość zwracana
Obiekt int64 .
any2Real
Konwertuje wartość typu anytype na wartość rzeczywistą .
real any2Real(anytype object)
Parametry
| Parameter | Description |
|---|---|
| obiekt | Wartość do konwersji. |
Wartość zwracana
Rzeczywista wartość.
Uwagi
Parametr obiektu może zawierać większość typów danych, ale przydatne dane wyjściowe są uzyskiwane dla elementów wejściowych daty, int, wyliczenia i typów str .
Example
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
Konwertuje wartość typu anytype na wartość str .
str any2Str(anytype object)
Parametry
| Parameter | Description |
|---|---|
| obiekt | Wartość do konwersji. |
Wartość zwracana
Wartość str .
Uwagi
Parametr obiektu może zawierać większość typów danych, ale przydatne dane wyjściowe są uzyskiwane z elementów wejściowych typu data, int i wyliczenia .
Example
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
Zobacz any2Date.
anytoenum
Zobacz any2Enum.
anytoguid
Zobacz any2Guid.
anytoint
Zobacz any2Int.
anytoint64
Zobacz any2Int64.
anytoreal
Zobacz any2Real.
anytostr
Zobacz any2Str.
char2Num
Konwertuje znak w ciągu na wartość ASCII znaku.
int char2Num(str text, int position)
Parametry
| Parameter | Description |
|---|---|
| SMS | Ciąg zawierający znak. |
| pozycja | Pozycja znaku w ciągu. |
Wartość zwracana
Wartość ASCII znaku jako obiekt int .
Uwagi
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
Konwertuje datę na liczbę całkowitą odpowiadającą liczbie dni od 1 stycznia 1900 roku.
int date2Num(date _date)
Parametry
| Parameter | Description |
|---|---|
| _data | Data konwersji. |
Wartość zwracana
Liczba dni między 1 stycznia 1900 a określoną datą.
Example
//Returns the value377.
date2Num(1311901);
static void date2NumExample(Args _arg)
{
date d = today();
int i;
i = date2Num(d);
print i;
}
date2Str
Konwertuje określoną datę na ciąg.
str date2Str(date date, int sequence, int day, int separator1, int month, int separator2, int year [, int flags = DateFlags::None])
Parametry
| Parameter | Description |
|---|---|
| date | Data konwersji. |
| sekwencja | Trzycyfrowa liczba wskazująca sekwencję składników daty: 1 dla dnia, 2 dla miesiąca i 3 dla roku. |
| day | Wartość wyliczenia wskazująca format składnika day daty. |
| separator1 | Wartość wyliczenia wskazująca separator używany między dwoma pierwszymi składnikami daty. |
| miesiąc | Wartość wyliczenia wskazująca format składnika miesiąca daty. |
| separator2 | Wartość wyliczenia wskazująca separator do użycia między dwoma ostatnimi składnikami daty. |
| rok | Wartość wyliczenia wskazująca format składnika roku daty. |
| flags | Wartość wyliczenia DateFlags wskazująca, czy ustawienia języka na komputerze lokalnym powinny być używane do obliczania odpowiedniej sekwencji od lewej do prawej lub od prawej do lewej w zwracanym ciągu. |
Wartość zwracana
Ciąg reprezentujący określoną datę.
Uwagi
Funkcja MorphX przydziela prawidłowe wartości do parametrów formatowania, jeśli określone wartości nie są prawidłowe. Aby użyć formatu daty określonego przez użytkownika w ustawieniach regionalnych, użyj funkcji strFmt lub date2Str i określ -1 we wszystkich parametrach formatowania. Gdy ustawienia regionalne kontrolują format daty, ustawienia mogą ulec zmianie z użytkownika na użytkownika. Jeśli parametr -1 jest używany dla jednego z parametrów separatora , oba separatory są domyślne dla ustawień regionalnych. Wartości parametrów sekwencji muszą być dowolną trzycyfrową liczbą zawierającą dokładnie jedno wystąpienie każdej cyfry 1, 2 i 3. Cyfry 1, 2 i 3 reprezentują odpowiednio dzień, miesiąc i rok. Na przykład 321 generuje rok sekwencji, miesiąc i dzień. Lub wartość może mieć wartość -1 , aby użyć ustawień regionalnych. Nie należy używać typu wyliczenia dla tego parametru, ponieważ liczby, takie jak 321, przekraczają zakres prawidłowych wartości dla wartości wyliczenia, czyli od 0 do 250 włącznie. Wartością domyślną parametru flags jest Wartość wyliczenia DateFlags::None , co oznacza, że przetwarzanie sekwencji od lewej do prawej lub od prawej do lewej nie jest wykonywane.
Example
Poniższy przykład przedstawia bieżącą datę w sekwencji roku, miesiąca i dnia.
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
Konwertuje wartość utcdatetime na ciąg.
str datetime2Str(utcdatetime datetime [, int flags = DateFlags::None])
Parametry
| Parameter | Description |
|---|---|
| data/godzina | Wartość utcdatetime , która ma być konwertowana. |
| flags | Wartość wyliczenia DateFlags wskazująca, czy używać ustawień lokalnych dla danych wyjściowych od prawej do lewej. |
Wartość zwracana
Ciąg reprezentujący wartość utcdatetime , która została określona jako parametr datetime .
Uwagi
Dane wejściowe daty i godziny o wartości null
Jeśli minimalna wartość utcdatetime jest określona dla parametru datetime , funkcja datetime2Str traktuje ją jako wartość wejściową o wartości null. Powoduje to zwrócenie pustego ciągu przez funkcję . Data-godzina 1900-01-01T00:00:00 jest zwracana przez metodę DateTimeUtil::minValue . Ta minimalna wartość jest traktowana jako null.
Ustawienia lokalne od prawej do lewej
Domyślnym zachowaniem tej funkcji jest wygenerowanie ciągu w sekwencji od lewej do prawej, gdzie część roku jest najdalej po lewej stronie. Jednak wartość parametru flagsdateFlags::FormatAll wartość wyliczenia przekierowuje funkcję do wygenerowania ciągu w sekwencji od prawej do lewej, jeśli ustawienia lokalne są skonfigurowane dla prawej do lewej. Format metody toStr klasy DateTimeUtil nie ma wpływu na ustawienia regionalne.
Example
static void jobTestDatetime2str( Args _args )
{
utcdatetime utc2 = 1959-06-17T15:44:33;
str s3;
s3 = datetime2Str( utc2 );
info( s3 );
}
enum2Str
Konwertuje określony wyliczony tekst na reprezentację znaków.
str enum2Str(enum enum)
Parametry
| Parameter | Description |
|---|---|
| wyliczenie | Wyliczony tekst do konwersji. |
Wartość zwracana
Wartość wyliczenia jako ciąg.
Example
Poniższy przykład zwraca ciąg "Nie dołączone". Jest to etykieta dla wartości IncludeNot typu wyliczenia ListCode .
static void enum2StrExample(Args _arg)
{
ListCode l;
l = ListCode::IncludeNot;
print enum2Str(l);
}
guid2Str
Konwertuje określony obiekt GUID na równoważny ciąg.
str guid2String(guid _uuid)
Parametry
| Parameter | Description |
|---|---|
| _uuid | Obiekt GUID do konwersji. |
Wartość zwracana
Ciąg odpowiadający określonemu obiektowi GUID.
Example
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
Konwertuje liczbę całkowitą na równoważny ciąg.
str int2Str(int integer)
Parametry
| Parameter | Description |
|---|---|
| liczba całkowita | Liczba całkowita do przekonwertowania. |
Wartość zwracana
Reprezentacja ciągu liczby całkowitej.
Example
static void int2StrExample(Args _arg)
{
print "This is int2Str, value is " + int2Str(intMax());
print "This is int642Str, value is " + int642Str(int64Max());
}
int642Str
Konwertuje określony parametr całkowity na równoważny ciąg tekstowy.
str int642Str(int64 integer)
Parametry
| Parameter | Description |
|---|---|
| liczba całkowita | Int64 do konwersji na ciąg. |
Wartość zwracana
Równoważny ciąg tekstowy parametru liczby całkowitej .
Example
static void example()
{
print "This is int2Str, value is " + int2Str(intMax());
print "This is int642Str, value is " + int642Str(int64Max());
}
num2Char
Konwertuje liczbę całkowitą na odpowiadający mu znak ASCII.
str num2Char(int figure)
Parametry
| Parameter | Description |
|---|---|
| rysunek | Liczba całkowita, która ma być konwertowana na znak. |
Wartość zwracana
Znak reprezentowany przez określoną liczbę całkowitą.
Example
static void num2CharExample(Args _arg)
{
str s;
s = num2Char(42);
// Prints an asterisk * -the character represented by 42.
print s;
}
num2Date
Pobiera datę odpowiadającą określonej liczbie dni po 1 stycznia 1900 r.
date num2Date(int _days)
Parametry
| Parameter | Description |
|---|---|
| _Dni | Liczba dni po 1 stycznia 1900 r. w celu zwrócenia daty. Nuta: Pierwsza prawidłowa data to 1 stycznia 1901 r. W związku z tym funkcja num2Date nie zwraca prawidłowej daty, chyba że _days jest większa niż 365. |
Wartość zwracana
Data, która jest liczbą dni określona przez parametr _days po 1 stycznia 1900 r.
Uwagi
num2Date(366); //Returns the date 01/01/1901 (1 January 1901).
num2Str
Konwertuje liczbę rzeczywistą na ciąg.
str num2Str(real number, int character, int decimals, int separator1, int separator2)
Parametry
| Parameter | Description |
|---|---|
| number | Liczba rzeczywista, która ma być konwertowana na ciąg. |
| znak | Minimalna liczba znaków wymaganych w tekście. |
| Miejsc dziesiętnych | Wymagana liczba miejsc dziesiętnych. |
| separator1 | Wartość wyliczenia decimalSeparator . |
| separator2 | Wartość wyliczenia ThousandSeparator . |
Wartość zwracana
Ciąg reprezentujący liczbę.
Uwagi
W przypadku parametru dziesiętnego maksymalna wartość to 16. Jeśli jest używana większa liczba, ta metoda uzyskuje wartość parametru dziesiętnego z komputera lokalnego. W obu przypadkach zaokrąglanie odbywa się. Poniżej przedstawiono możliwe wartości wyliczenia dla parametru separator1 :
- 99 — Automatyczne (ustawienia formatowania użytkownika określają, jaki separator dziesiętny jest używany), wartość wyliczenia DecimalSeparator::Auto
- 1 — Kropka (.), wartość wyliczenia DecimalSeparator::D ot
- 2 — przecinek (,), wartość wyliczenia DecimalSeparator::Comma
Poniżej przedstawiono możliwe wartości parametru separator2 :
- 99 — Automatyczne (ustawienia formatowania użytkownika określają, jaki separator tysięcy jest używany)
- 0 — Brak (bez separatora tysięcy), wartość wyliczenia ThousandSeparator::None
- 1 — Kropka (.), wartość wyliczenia ThousandSeparator::D ot
- 2 — Przecinek (,), wartość wyliczenia ThousandSeparator::Comma
- 3 — Apostrophe ('), wartość wyliczenia ThousandSeparator::Apostrophe
- 4 — spacja ( ), wartość wyliczenia ThousandSeparator::Space
Example
W poniższym przykładzie kodu pierwsze wywołanie metody num2str udostępnia 16 parametrów dziesiętnych , a drugie wywołanie zapewnia 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
}
Wynik
Komunikaty znajdują się w następujących danych wyjściowych programu Infolog. Pierwsza liczba w danych wyjściowych zawiera 16 cyfr dziesiętnych, natomiast druga liczba zawiera tylko dwie cyfry miejsca dziesiętnego.
Message (10:18:12)
0.1294567890123457
0.13
str2Date
Konwertuje określony ciąg na wartość daty .
date str2Date(str _text, str _sequence)
Parametry
| Parameter | Description |
|---|---|
| _Tekst | Ciąg, który ma być konwertowany na wartość daty . |
| _kolejność | Trzycyfrowa liczba całkowita, która opisuje pozycje dnia, miesiąca i roku w ciągu do przekonwertowania. |
Wartość zwracana
Wartość daty .
Uwagi
Użyj następujących wartości, aby określić pozycje dnia, miesiąca i roku w parametrze _sequence :
- Dzień: 1
- Miesiąc: 2
- Rok: 3
Jeśli na przykład sekwencja w ciągu to miesiąc, rok, a następnie dzień, parametr _sequence musi mieć wartość 231. Zwracana jest data 0 (zero), jeśli parametry wejściowe określają nieprawidłową datę. W poniższych dwóch przykładach określono nieprawidłową datę.
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.
Example
static void str2DateExample(Args _arg)
{
date d;
d = str2Date("22/11/2007", 123);
print d;
}
str2Datetime
Generuje wartość utcdatetime z określonego ciągu informacji o dacie i godzinie.
utcdatetime str2datetime( str text, int sequence )
Parametry
| Parameter | Description |
|---|---|
| SMS | Ciąg do konwersji na wartość utcdatetime . |
| sekwencja | Trzycyfrowy numer opisujący sekwencję składników daty w parametrze tekstowym . |
Wartość zwracana
Wartość utcdatetime reprezentująca określoną datę i godzinę.
Uwagi
Wymagania składniowe dotyczące części daty parametru tekstowego są elastyczne. Różnorodność prawidłowych formatów jest taka sama jak w funkcji date2str . Każde z poniższych wywołań funkcji str2datetime jest prawidłowe, a wszystkie z nich generują te same dane wyjściowe.
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 );
Każdy składnik daty i godziny jest reprezentowany przez cyfrę w parametrze sekwencji :
- 1 — dzień
- 2 — miesiąc
- 3 – Rok
Na przykład rok, miesiąc, kolejność dnia to 321. Wszystkie prawidłowe wartości zawierają każdą z tych trzech cyfr dokładnie raz. Jeśli wartość parametru sekwencji jest nieprawidłowa, ustawienia regionalne są używane do interpretowania parametru tekstu wejściowego. Jeśli parametry wejściowe opisują nieprawidłową datę i godzinę, zwracany jest pusty ciąg.
Example
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
Pobiera element wyliczenia, dla którego zlokalizowana wartość właściwości Label jest zgodna z ciągiem wejściowym.
enum str2Enum(enum _type, str _text)
Parametry
| Parameter | Description |
|---|---|
| _typ | Zmienna zadeklarowana jako typ wyliczenia . |
| _Tekst | Zlokalizowany tekst właściwości Label elementu docelowego w wyliczeniem. |
Wartość zwracana
Element wyliczenia docelowego, który reprezentuje również int.
Uwagi
Pokrewna funkcja wyliczenie2 zwraca wartość właściwości Label z jednego elementu wyliczenia. Wartość zwracana przez funkcję enum2str może być danymi wejściowymi parametru _type funkcji str2enum . Odpowiednią wartością parametru _text jest enum2Str(BankAccountType::SavingsAccount). Każdy element wyliczenia ma właściwość Name i właściwość Label . W nowej instalacji wartości Name są prawie zawsze wyrazami angielskimi. W wersji angielskiej wartość właściwości Label jest prawie zawsze taka sama jak wartość Name . Jednak w wersjach innych niż angielskie wartości Label są zlokalizowane i dlatego nie są zgodne z wartościami Name .
Example
Aby uniknąć niezgodności ciągów, które są spowodowane lokalizacją do innych języków mówionych, zalecamy użycie funkcji enum2str w celu wygenerowania danych wejściowych do funkcji str2enum . W poniższym przykładzie pokazano odpowiedni sposób użycia funkcji str2enum wraz z funkcją 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
Konwertuje ciąg na obiekt GUID.
Guid str2Guid(str text)
Parametry
| Parameter | Description |
|---|---|
| przewodnik | Ciąg reprezentujący identyfikator GUID. |
Wartość zwracana
Identyfikator GUID reprezentowany przez ciąg wejściowy.
Uwagi
Na przykład prawidłową wartością parametru guid jest {12345678-1234-abCD-3456-123456789012}, z nawiasami klamrowymi lub bez nawiasów klamrowych.
str2Int
Konwertuje ciąg na równoważną liczbę całkowitą.
int str2Int(str _text)
Parametry
| Parameter | Description |
|---|---|
| _Tekst | Ciąg do konwersji na liczbę całkowitą. |
Wartość zwracana
Liczba całkowita równoważna określonego ciągu.
Example
static void str2IntExample(Args _arg)
{
int i;
i = str2Int("1234567890");
print "i = " + int2Str(i);
}
str2Int64
Konwertuje ciąg na wartość Int64 .
int str2Int64(str text)
Parametry
| Parameter | Description |
|---|---|
| SMS | Ciąg, który ma zostać przekonwertowany. |
Wartość zwracana
Wartość Int64 określonego ciągu.
Example
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
Konwertuje ciąg na liczbę rzeczywistą.
real str2Num(str _text)
Parametry
| Parameter | Description |
|---|---|
| _Tekst | Ciąg do konwersji na liczbę rzeczywistą. |
Wartość zwracana
Liczba rzeczywista, jeśli określony ciąg zawiera prawidłową liczbę; w przeciwnym razie 0 (zero).
Uwagi
W poniższych przykładach pokazano, jak ta funkcja jest używana.
str2Num("123.45") returns the value 123.45.
str2Num("a123") returns the value 0.0.
str2Num("123a") returns the value 123.00.
Skanowanie odbywa się od lewej do prawej i kończy się, gdy nie można przekonwertować znaku na część liczby rzeczywistej.
Example
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
Konwertuje ciąg na wartość timeOfDay .
int str2Time(str _text)
Parametry
| Parameter | Description |
|---|---|
| _Tekst | Czas do obliczenia liczby sekund od północy. |
Wartość zwracana
Liczba sekund między północą a parametrem _text ; w przeciwnym razie , -1.
Uwagi
str2Time("05:01:37") //Returns the value 18097.
str2Time("7 o'clock") //Returns the value -1.
Example
static void str2TimeExample(Args _arg)
{
int i;
i = str2Time("11:30");
print i;
}
time2Str
Konwertuje wartość timeOfDay na ciąg zawierający godziny, minuty i sekundy.
str time2Str(int _time, int _separator, int _timeFormat)
Parametry
| Parameter | Description |
|---|---|
| _Godzina | Wartość timeOfDay . |
| _separator | Wartość wyliczenia TimeSeparator , która wskazuje znaki między godzinami, minutami i sekundami w ciągu wyjściowym. |
| _timeFormat | Wartość wyliczenia TimeFormat wskazująca, czy jest używany zegar 12-godzinny, czy zegar 24-godzinny. |
Wartość zwracana
Ciąg reprezentujący określony czas.
Uwagi
Wartość parametru _time to liczba sekund od północy.
Example
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
Konwertuje liczbę całkowitą na ciąg. Założeniem jest to, że liczba całkowita jest niepodpisane.
str uint2Str(int integer)
Parametry
| Parameter | Description |
|---|---|
| liczba całkowita | Liczba całkowita do przekonwertowania. |
Wartość zwracana
Ciąg odpowiadający określonej niepodpisanej liczbą całkowitą.
Uwagi
Użyj tej funkcji zamiast funkcji int2str dla bardzo dużych liczb całkowitych, takich jak identyfikatory rekordów.
info(int2str(3123456789)); //returns -1171510507 as a string.
info(uint2str(3123456789)); //returns 3123456789 as a string.