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 jen "%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. 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) Zakó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)