moin,
ich schaff es leider alleine nicht.
Ich möchte ein Reading mit dem Wert z.B. 2.2902 mit nur einer Nachkommastelle (gerundet) darstellen.
So weit so gut.
stateformat {sprintf("%.1f",ReadingsVal($name,"DIV",0)}
Bei negativen Werten kommt wie erwartet ein führendes Minus.
Nun soll das Ergebnis aber bei positiven Werten ein Pluszeichen anzeigen.
Laut Recherche über gxxgle kann bei Perl mit dem Parameter +d genau dieses veranlasst werden.
Ich hätte jetzt erwartet, dass ein {sprintf("%+d.1f", ....)} funktioniert, aber als Resultat kommt +2.1f
Habe jetzt schon alles Mögliche probiert, aber es scheinen nur ganze Zahlen zu funktionieren.
Das runden wird anscheinend als Text interpretiert.
... ich kriegs nicht hin.
Kann mir jemand helfen?
vielen Dank im Voraus
Cheers
mi.ke
Und mit "%+.1f" ?
Ok, das funktioniert so, vielen Dank.
Ich hatte versuche zu escapen und/oder Zeichen dazuzufügen, aber weniger ist ja manchmal mehr.
Danke und Grüße
Cheers
mi.ke
PS.
Warum das jetzt so ist, ist mir zwar schleierhaft, aber ich versuch es mir einfach mal so zu merken.