String in Gleitkommazahl umwandeln

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

Blaster86
Beiträge: 7
Registriert: 27.02.2023, 19:00
System: CCU
Hat sich bedankt: 2 Mal

Re: String in Gleitkommazahl umwandeln

Beitrag von Blaster86 » 28.02.2023, 09:00

ja, genau. Der String würde dann in etwa wie "1;2;2;4;6;5;9" usw aussehen.
Ich würde auch gerne gezielt Werte abgreifen z.B Position 3 und 5 und die Werte dann addieren.

Tyfys
Beiträge: 549
Registriert: 17.04.2021, 17:12
System: CCU
Hat sich bedankt: 27 Mal
Danksagung erhalten: 125 Mal

Re: String in Gleitkommazahl umwandeln

Beitrag von Tyfys » 28.02.2023, 09:50

da gibt es sogar zwei Möglichkeiten :

Code: Alles auswählen

string arr = "1;2;2;4;6;5;9";

!Variante 1)
integer pos = 2;
real zahl = arr.StrValueByIndex(";", pos).ToFloat();
WriteLine(zahl);

!Variante 2)
pos = 0;
zahl = web.webGetValueFromList(arr, pos).ToFloat();
WriteLine(zahl);
Gruß
Harry

MichaelN
Beiträge: 9677
Registriert: 27.04.2020, 10:34
System: CCU
Hat sich bedankt: 700 Mal
Danksagung erhalten: 1625 Mal

Re: String in Gleitkommazahl umwandeln

Beitrag von MichaelN » 28.02.2023, 10:33

Ach so, du wolltest das gar nicht selber nachlesen.
LG, Michael.

Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.

Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++

[sprotte80]
Beiträge: 336
Registriert: 05.10.2020, 18:37
System: CCU
Hat sich bedankt: 30 Mal
Danksagung erhalten: 25 Mal

Re: String in Gleitkommazahl umwandeln

Beitrag von [sprotte80] » 28.02.2023, 18:03

Hi
MichaelN hat geschrieben:
27.02.2023, 23:55
Interessanterweise ist es anscheinend auch egal, wenn die Index Variable kein string (mehr) ist. Ich meine mal darüber gestolpert zu sein. Muss sie (nur) beim Eintritt in die Schleife von Typ string sein?
Steht davon nix in der SDV-Scriptdoku?

Auf CCU2 und CCU3 muss bei dem Typ der Verwendung die Var beim Eintritt immernoch nen String sein.
innerhalb vom loop kannste den Typ wechseln wie du willst.
Aber Achtung bei CCU2 da hats noch nen Bug wo du vor dem Loop drauf achten musst.
Is aber in der CCU3 nur halb repariert worden. Darum isses immer noch ein Bug.

Bei andrer Verwendung von foreach brauchts auf CCU2 und CCU3 nichtmal beim Eintritt nen String.

Thomas
Wenn du keine App zur Bedienung brauchst, dann hast du kein Smarthome, sondern nur eine angefangene Baustelle, oder nur ein unsmartes Autohome.

Homematic-Script - ScriptLexikon für alle
Methoden Konstanten
Hilfe und Infos erwünscht. Alle können mitmachen. Keine Levels. Keine Geheimtuerei.

Antworten

Zurück zu „HomeMatic Zentrale (CCU / CCU2 / CCU3 / Charly)“