AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Currency String nach Gleitkomma convertieren
Thema durchsuchen
Ansicht
Themen-Optionen

Currency String nach Gleitkomma convertieren

Ein Thema von Alfonso · begonnen am 26. Nov 2009 · letzter Beitrag vom 27. Nov 2009
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#11

Re: Currency String nach Gleitkomma convertieren

  Alt 26. Nov 2009, 17:47
Ich denke, das müsste dem TE jetzt weiterhelfen

Gruß

Wolfgang
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.619 Beiträge
 
Delphi 12 Athens
 
#12

Re: Currency String nach Gleitkomma convertieren

  Alt 26. Nov 2009, 18:09
Naja, einen Vorschlag hätte ich noch:
Delphi-Quellcode:
function EuroStringToStr(s1: String; DecSep: char = ','): double;
var i: integer;
begin
  for i:= length(s1) downto 1 do
    if not (s1[i] in ['0'..'9',DecSep]) then
      Delete(s1,i,1);
  Result := StrToFloat(s1);
end;
Damit kann man sich dann aussuchen, ob fix das Komma oder doch lieber der Dezimalseparator genommen werden soll.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#13

Re: Currency String nach Gleitkomma convertieren

  Alt 26. Nov 2009, 19:52
Gefällt mir jetzt so sehr gut. Wollte nur den Anstoss geben
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#14

Re: Currency String nach Gleitkomma convertieren

  Alt 26. Nov 2009, 20:00
Ich frage mich allerdings, ob es wirklich sinnvoll ist, alles außer den erlaubten Zeichen einfach zu löschen. Stellt euch vor, einer ruft sowas auf:
EuroStringToStr('1ABC23,5 67.89 € wuppdi') In dem Falle wäre es schon sinnvoll, eine Fehlermeldung zu erhalten...
  Mit Zitat antworten Zitat
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#15

Re: Currency String nach Gleitkomma convertieren

  Alt 26. Nov 2009, 20:06
Hast recht, ausserdem sollten wir jetzt noch den Funktionsnamen von EuroStringToStr
auf EuroStringToFloat ändern
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
Alfonso

Registriert seit: 10. Jan 2006
250 Beiträge
 
Delphi 11 Alexandria
 
#16

Re: Currency String nach Gleitkomma convertieren

  Alt 26. Nov 2009, 21:40
Eine wichtige Sache habt Ihr noch vergessen: Das Minuszeichen! Es gibt auch Leute die Schulden machen
Delphi-Quellcode:
function EuroStringToFloat(s1: String; DecSep: char = ','): double;
var i: integer;
begin
  for i:= length(s1) downto 1 do
    if not (s1[i] in ['0'..'9','-',DecSep]) then
      Delete(s1,i,1);
  Result := StrToFloat(s1);
end;
Alfonso
Seit Turbo Pascal 3.0 dabei!
Ewiger Pascal Fan!
  Mit Zitat antworten Zitat
Alfonso

Registriert seit: 10. Jan 2006
250 Beiträge
 
Delphi 11 Alexandria
 
#17

Re: Currency String nach Gleitkomma convertieren

  Alt 26. Nov 2009, 21:42
Zitat von NamenLozer:
Stellt euch vor, einer ruft sowas auf:
EuroStringToStr('1ABC23,5 67.89 € wuppdi') In dem Falle wäre es schon sinnvoll, eine Fehlermeldung zu erhalten...
Tja, wie stellt man jetzt fest, ob der eingegebene String eine gültige Zahl enthält ... ?
Alfonso
Seit Turbo Pascal 3.0 dabei!
Ewiger Pascal Fan!
  Mit Zitat antworten Zitat
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#18

Re: Currency String nach Gleitkomma convertieren

  Alt 26. Nov 2009, 22:21
@Alfonso:
Zitat:
Eine wichtige Sache habt Ihr noch vergessen: Das Minuszeichen! Es gibt auch Leute die Schulden machen
Haben wir nicht
Die Funkton klappt auch mit '-' als 1.Zeichen

Grüß

Wolfgang
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
Alfonso

Registriert seit: 10. Jan 2006
250 Beiträge
 
Delphi 11 Alexandria
 
#19

Re: Currency String nach Gleitkomma convertieren

  Alt 27. Nov 2009, 21:00
Zitat von Wolfgang Mix:
@Alfonso:
Zitat:
Eine wichtige Sache habt Ihr noch vergessen: Das Minuszeichen! Es gibt auch Leute die Schulden machen
Haben wir nicht
Die Funkton klappt auch mit '-' als 1.Zeichen
Das verstehe ich aber nicht. Die Schleife geht runter bis zum 1.ten Zeichen, und da das '-' nicht im Set ['0'..'9',DecSep] war, wurde es doch gelöscht, oder bin ich blind.

Gruß
Alfonso
Alfonso
Seit Turbo Pascal 3.0 dabei!
Ewiger Pascal Fan!
  Mit Zitat antworten Zitat
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#20

Re: Currency String nach Gleitkomma convertieren

  Alt 27. Nov 2009, 21:21
Sorry, hast natürlich recht, hatte ich nicht getestet, nur mit der 1. Version.

Gruß

Wolfgang
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 12:49 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