From: "Alexander Camek" <Alexander.Camek@Elektrobit.com>
Subject: Re: Converting Integer / Float to String
Date: Thu, 17 Jul 2008 10:32:59 +0200
Date: 2008-07-17T10:32:59+02:00 [thread overview]
Message-ID: <newscache$md654k$4y6$1@pleione.3soft.de> (raw)
In-Reply-To: 62haf1069b85$.tb768rmm6vib.dlg@40tude.net
Hi Dimitry,
"Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> wrote in message
news:62haf1069b85$.tb768rmm6vib.dlg@40tude.net...
> On Thu, 17 Jul 2008 09:49:16 +0200, Alexander Camek wrote:
>> I am currently using some code like this:
>>
>> begin
>> Value :=Float'Value(Float_String);
>> exception
>> when Constraint_Error => Value := 0.0;
>> end;
>>
>> For me this is very ugly and a big hack.
>
> Certainly it is ugly, because it is not clear why an improperly spelt or a
> too large number should magically become 0.0.
> The first question is why do you want to convert string to float. This
> makes no sense in most cases. (Parsing text is not about string
> conversions.) The second question is about the format of the number in the
> string, which includes treatment of blank characters, based numbers,
> signed
> numbers and so on. The third question is about error handling, what
> happens
> upon syntax, overflow, underflow, no number, etc errors.
First of all, this was only a base to start discussion on it and at that
point I need some value to initial my float or integer value to get a proper
value if the string is malformed.
As far as I can tell, the background of the code snipplet is that the string
is given from an xml file which is parsed by glib xml and there I get all as
a string.
To your second question. The whitespaces are trimmed and I can only rely on
the point that there is a correct value in it, if not then the default value
will be set or at the beginning for initilisation 0.0 is used.
To your third question. That is reason why I posted here. I want to get a
idea what I have missed in doing my parsing or how to do it a better way. It
is clear that there is no silver bullet to do that. But what I want is a
good feeling about how to deal with it, what I have to think about and how
to deal with it.
Greetings
Alexander
next prev parent reply other threads:[~2008-07-17 8:32 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-17 7:49 Converting Integer / Float to String Alexander Camek
2008-07-17 8:05 ` anon
2008-07-17 8:15 ` Dmitry A. Kazakov
2008-07-17 8:32 ` Alexander Camek [this message]
2008-07-17 9:24 ` Dmitry A. Kazakov
2008-07-20 0:28 ` JPWoodruff
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox