This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
vba:cast:cstrf [23.06.2016 11:47:09] yaslaw created |
vba:cast:cstrf [29.06.2016 10:10:49] (current) yaslaw |
||
---|---|---|---|
Line 2: | Line 2: | ||
version=1.0.0 | version=1.0.0 | ||
vdate=21.06.2016 | vdate=21.06.2016 | ||
- | fname=cstrf.bas | + | fname=cast_cstrf.bas |
ns=%NAMESPACE% | ns=%NAMESPACE% | ||
fpath=/vba/cast | fpath=/vba/cast | ||
Line 31: | Line 31: | ||
==== Paramterliste ==== | ==== Paramterliste ==== | ||
- | * **iValue** Item das zu einem String geparst werden soll | + | * **iValue** Item das zu einem String geparst werden soll |
- | * **iparams** Paramter um das Verhalten von CStrF zu steuern | + | * **iparams** Paramter um das Verhalten von CStrF zu steuern |
- | * **iDelemiter** String | + | * **iDelemiter** String |
==== Enumerators ==== | ==== Enumerators ==== | ||
Line 47: | Line 47: | ||
===== Beispiele ===== | ===== Beispiele ===== | ||
- | <code vb>? cStrF(DateTime()) | + | Hier einige Anwendungsbeispiele |
- | #2016-06-23 11:35:33# | + | > Für die Ausgabe der Resultate verwendete ich die Funktion [[vba:functions:print_r:]]. |
- | ? cStrF(array(1,2,3)) | + | ==== Listen ==== |
+ | Dictionaries sind im Beispieldirekt mit [[vba:cast:cdict]] erstellt. | ||
+ | <code vb>? cStrF(array(1,2,3)) | ||
[1,2,3] | [1,2,3] | ||
Line 59: | Line 61: | ||
[1,2,[1,22,33]] | [1,2,[1,22,33]] | ||
+ | 'Verschachtelter Array | ||
? cStrF(array(1,2,array(1,22,33)), csfNon) | ? cStrF(array(1,2,array(1,22,33)), csfNon) | ||
- | 1, 2, (1, 22, 33)</code> | + | 1, 2, (1, 22, 33) |
+ | |||
+ | 'Dictionary anzeigen | ||
+ | print_r cDict("a", 12, "b", array(22, 33)) | ||
+ | <Dictionary> ( | ||
+ | [a] => <Integer> 12 | ||
+ | [b] => <Variant()> ( | ||
+ | [0] => <Integer> 22 | ||
+ | [1] => <Integer> 33 | ||
+ | ) | ||
+ | ) | ||
+ | |||
+ | |||
+ | 'und mittels cStrF ausgeben. | ||
+ | 'Ist lib_json vorhanden, wird der Dictionary als json-String ausgegeben | ||
+ | ? cstrf(cDict("a", 12, "b", array(22,33))) | ||
+ | {"a":12,"b":[22,33]} | ||
+ | |||
+ | 'Ansnsten gehen die Keys verloren | ||
+ | ? cstrf(cDict("a", 12, "b", array(22,33)), csfNon) | ||
+ | 12, (22, 33)</code> | ||
+ | |||
+ | ==== Null und Nothing ==== | ||
+ | <code vb>print_r cStrF(Null) | ||
+ | <String> '' | ||
+ | |||
+ | print_r cStrF(Nothing) | ||
+ | <String> ''</code> | ||
+ | |||
+ | ==== Mit Klassen die ein toString haben oder das Interface IFormattable besitzen ==== | ||
+ | Solche Klassen können dierkt geparst werden. | ||
+ | Die folgenden Klassen kommen in den Beispielen vor: [[vba:classes:date:index]], [[vba:classes:iterator:index]] | ||
+ | <code vb>'DateTime | ||
+ | ? cStrF(DateTime().add("P3D")) | ||
+ | #2016-06-26 12:00:51# | ||
+ | |||
+ | 'DateInterval | ||
+ | ? cStrF(DateTime(#12/31/2015#).diff(date())) | ||
+ | P5M23D | ||
+ | ? cStrF(DateInterval.instancePart("M", 3)) | ||
+ | P3M | ||
+ | |||
+ | 'Iterator | ||
+ | 'Wenn der Cursor nocht nicht positioniert ist, wird der Erste Wert ausgegeben | ||
+ | ?cStrF(Iterator(array(1,2,3))) | ||
+ | 1 | ||
+ | |||
+ | 'Ansonsten der aktuelle | ||
+ | ?cStrF(Iterator(array(1,2,3)).toPosition1(2)) | ||
+ | 3</code> | ||
+ | |||
+ | ==== Objekte die nicht geparst werden können ==== | ||
+ | tbd | ||
===== Code ===== | ===== Code ===== | ||
<source '%%fpath%%/%%fname%%' vb> | <source '%%fpath%%/%%fname%%' vb> |