StringScan - metoda objektu Pm
Popis:
Čtení dat z textového řetězce formátovaného v syntaxi jazyka
C.
Tato metoda je zastaralá (ale funkční) a je lepší použít metodu
PmFormat.Scan.
Syntaxe:
Array StringScan(String sFormat, String sSource)
Parametry:
sFormat | (String) Formátovací předpis zapsaný v konvenci jazyka C.
Viz Formátovací předpis jazyka C.
Pro reálná čísla se však nesmí uvádět počet desetinných míst (místo %5.2f musí být pouze "%5f"). |
sSource | (String) řetězec, ze kterého budou vyčítána data podle daného formátu |
---|
Vrácená hodnota:
Metoda vrací data v poli hodnot (objekt
PmArray pro
JavaScript nebo datový typ
Array pro
VBScript).
Poznámka:
Tato metoda je funkční i v
Makro výraz $.expr a v události
onDraw objektu
PmgCanvas.
Tato metoda je funkční i ve
Web obrazech.
HexaString (textový řetězec v hexadecimálním tvaru) lze používat dvojím způsobem:
1) Zobrazení čísla v hexadecimálním tvaru, kde vyšší řády jsou vlevo. To odpovídá uložení v paměti
Big-endian.
Jedná se o konverze hodnoty čísla do textového řetězce (a obráceně) pomocí formátovacího řetězce.
Pro využití
HexaString tímto způsobem se doporučuje používat objekt
PmFormat.
2) Kódování obsahu části paměti o určité velikosti (např. 1B, 2B, 4B …) v hexadecimálním tvaru. Potom záleží na způsobu uložení čísla v paměti.
Na procesorech
Intel a
AMD (architektura
x86 nebo
x64) se používá tzv.
Little-endian, kde nižší řády jsou vlevo.
Pro využití
HexaString tímto způsobem se doporučuje používat výhradně objekt
PmBuffer, který umí pracovat s
Little-endian i
Big-endian.
Příklad:
JavaScriptVBScriptVyber a zkopíruj do schránky
var nTemperature, nPressure;
var sText = "Teplota=25.48, Tlak=112.8";
var aData = Pm.StringScan("Teplota=%5f, Tlak=%5f", sText);
nTemperature = aData.GetItem(0);
nPressure = aData.GetItem(1);
Dim nTemperature, nPressure, sText, aData
sText = "Teplota=25.48, Tlak=112.8"
aData = Pm.StringScan("Teplota=%5f, Tlak=%5f", sText)
nTemperature = aData(0)
nPressure = aData(1)