AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

StrToFloat - TFormatSettings

Ein Thema von Pfaffe · begonnen am 8. Dez 2016 · letzter Beitrag vom 8. Dez 2016
Antwort Antwort
Pfaffe

Registriert seit: 29. Jan 2009
294 Beiträge
 
Delphi 12 Athens
 
#1

StrToFloat - TFormatSettings

  Alt 8. Dez 2016, 14:04
Delphi-Version: 10 Berlin
Warum kommt die Exception bei StrToFloat?
Mir ist übrigens bekannt, dass es funktioniert, wenn ich den Punkt vorher aus dem String entferne.
Miniaturansicht angehängter Grafiken
2016-12-08-14_53_47-benachrichtigung-ueber-debugger-exception.png  
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.110 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: StrToFloat - TFormatSettings

  Alt 8. Dez 2016, 14:08
Die Exception kommt weil sie, laut Doku, kommen soll:
http://docwiki.embarcadero.com/Libra...ils.StrToFloat

Zitat:
Tausendertrennzeichen und Währungssymbole sind nicht zulässig. Enthält S keinen gültigen Wert, löst StrToFloat eine EConvertError-Exception aus.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.142 Beiträge
 
Delphi 12 Athens
 
#3

AW: StrToFloat - TFormatSettings

  Alt 8. Dez 2016, 14:21
Und deine Initialisierung ist auch falsch.
http://docwiki.embarcadero.com/Libra...ettings.Create
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Pfaffe

Registriert seit: 29. Jan 2009
294 Beiträge
 
Delphi 12 Athens
 
#4

AW: StrToFloat - TFormatSettings

  Alt 8. Dez 2016, 14:27
Danke,
nach dem ich die Hilfe zum dritten mal gelesen habe, habe ich den Hinweis gesehen. Mit Tausendertrennzeichen geht es nicht.

Zitat:
Und deine Initialisierung ist auch falsch.
Warum?
Kein Parameter -> "Initialisiert einen TFormatSettings-Datensatz mit den aktuellen vom Betriebssystem bereitgestellten Standardwerten."
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: StrToFloat - TFormatSettings

  Alt 8. Dez 2016, 14:32
Kein Parameter -> "Initialisiert einen TFormatSettings-Datensatz mit den aktuellen vom Betriebssystem bereitgestellten Standardwerten."
Weil Create einen Record ZURÜCK liefert, nicht den aktuellen initialisiert --> FormatSettings := TFormatSettings.Create; ......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Pfaffe

Registriert seit: 29. Jan 2009
294 Beiträge
 
Delphi 12 Athens
 
#6

AW: StrToFloat - TFormatSettings

  Alt 8. Dez 2016, 14:45
Danke.
  Mit Zitat antworten Zitat
Pfaffe

Registriert seit: 29. Jan 2009
294 Beiträge
 
Delphi 12 Athens
 
#7

AW: StrToFloat - TFormatSettings

  Alt 8. Dez 2016, 15:05
Dieses Variante "zahl:= s.ToDouble;" ist wohl nicht zu gebrauchen, hier fehlt die Möglichkeit TFormatSettings zu übergeben.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.009 Beiträge
 
Delphi 12 Athens
 
#8

AW: StrToFloat - TFormatSettings

  Alt 8. Dez 2016, 15:17
Dieses Variante "zahl:= s.ToDouble;" ist wohl nicht zu gebrauchen, hier fehlt die Möglichkeit TFormatSettings zu übergeben.
Das ist in der Tat so. Allerdings wird andersrum ein Schuh draus:

Delphi-Quellcode:

zahl := double.Parse(s, MyFormatSettings);
oder auch

Delphi-Quellcode:
if double.TryParse(s, zahl, MyFormatSettings) then
else
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Pfaffe

Registriert seit: 29. Jan 2009
294 Beiträge
 
Delphi 12 Athens
 
#9

AW: StrToFloat - TFormatSettings

  Alt 8. Dez 2016, 15:42
Danke, diese Variante kannte ich überhaupt noch nicht.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz