double to string without point [SOLVED]
-
Hi everybody, I wanna have the smallest code to conver a double to a string without the point of digits Exple: 12.010 --->1201 ty
modified on Friday, March 18, 2011 6:03 AM
(anti)hint: NumberFormat.DecimalSeparator does not accept an empty string. :)
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
-
Hi everybody, I wanna have the smallest code to conver a double to a string without the point of digits Exple: 12.010 --->1201 ty
modified on Friday, March 18, 2011 6:03 AM
That is an unusual requirement. However:
double d = 12.010;
string s = Math.Truncate(d * 100).ToString();
-
That is an unusual requirement. However:
double d = 12.010;
string s = Math.Truncate(d * 100).ToString();
Or
d.ToString().Replace('.', string.Empty);
So many ways to do it, and as usual, the requirements exist in a fug of inadequacy.
I'm not a stalker, I just know things. Oh by the way, you're out of milk.
Forgive your enemies - it messes with their heads
-
Or
d.ToString().Replace('.', string.Empty);
So many ways to do it, and as usual, the requirements exist in a fug of inadequacy.
I'm not a stalker, I just know things. Oh by the way, you're out of milk.
Forgive your enemies - it messes with their heads
I'm sorry to say, I see two problems with that: 1. it doesn't compile as Replace needs (char,char) or (string,string); 2. cultural differences may cause some other character to act as decimal point, a comma for instance. So I'd suggest
d.ToString(NumberFormatInfo.InvariantInfo).Replace(".", "");
as the proper way to do it, and possibly""+(int)(100*d)
as the shortest code (with overflow risks). :)Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
-
I'm sorry to say, I see two problems with that: 1. it doesn't compile as Replace needs (char,char) or (string,string); 2. cultural differences may cause some other character to act as decimal point, a comma for instance. So I'd suggest
d.ToString(NumberFormatInfo.InvariantInfo).Replace(".", "");
as the proper way to do it, and possibly""+(int)(100*d)
as the shortest code (with overflow risks). :)Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
Don't be sorry. You are right after all.
I'm not a stalker, I just know things. Oh by the way, you're out of milk.
Forgive your enemies - it messes with their heads
-
Don't be sorry. You are right after all.
I'm not a stalker, I just know things. Oh by the way, you're out of milk.
Forgive your enemies - it messes with their heads
Well, I do am sorry in a different way, as I didn't find a way to signal your code's weakness without violating Dave's hint not to answer homework questions in any detail. That must be the price to pay when coming late to a thread. :)
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
-
Hi everybody, I wanna have the smallest code to conver a double to a string without the point of digits Exple: 12.010 --->1201 ty
modified on Friday, March 18, 2011 6:03 AM
-
yes please, as long as they don't add points. :)
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
-
Hi everybody, I wanna have the smallest code to conver a double to a string without the point of digits Exple: 12.010 --->1201 ty
modified on Friday, March 18, 2011 6:03 AM
You might need a file for that.
-
You might need a file for that.
please make sure there is no period in the filename! :-D
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
-
The only way you're going to "have" is to write it yourself. We're not going to write it for you, and frankly, this can be done in a single line of code. ...and this reeks of being a homework assignment.
A guide to posting questions on CodeProject[^]
Dave KreskowiakWhat... You need a WHOLE line. I could do it in 1/3 of a line... :)
I wasn't, now I am, then I won't be anymore.
-
That is an unusual requirement. However:
double d = 12.010;
string s = Math.Truncate(d * 100).ToString();
Not as silly as you may think. I worked on a project once where the client provided long lists of products with decimal based prices, but where the database was setup to hold prices based in cents, not decimal dollars. A crappy design it was, but hands were tied they were.
I wasn't, now I am, then I won't be anymore.
-
What... You need a WHOLE line. I could do it in 1/3 of a line... :)
I wasn't, now I am, then I won't be anymore.
I'll do it in a 1/3 of a line at 640x480. If you want to beat that, you'll have to "name that tune"!
A guide to posting questions on CodeProject[^]
Dave Kreskowiak -
Well, I do am sorry in a different way, as I didn't find a way to signal your code's weakness without violating Dave's hint not to answer homework questions in any detail. That must be the price to pay when coming late to a thread. :)
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
The reason I posted mine is because, weaknesses from typing it up on a phone keyboard notwithstanding, it's a poor way of solving the problem - and then you went and corrected it. I ignored various edge cases, which you started to correct - shame on you ;P .
I'm not a stalker, I just know things. Oh by the way, you're out of milk.
Forgive your enemies - it messes with their heads
-
please make sure there is no period in the filename! :-D
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
thank u for all, u really let me laughing very much with all u jokes responses :laugh: that is the real help I found a solution my self:
double x = 1458752.10254000;
string s = x.ToString(System.Globalization.CultureInfo.InvariantCulture).Replace(".",string.Empty);
Console.WriteLine(s);
Console.ReadLine();the output is :145875210254 thank u very much for u big effort in creating jokes. :laugh:
-
The reason I posted mine is because, weaknesses from typing it up on a phone keyboard notwithstanding, it's a poor way of solving the problem - and then you went and corrected it. I ignored various edge cases, which you started to correct - shame on you ;P .
I'm not a stalker, I just know things. Oh by the way, you're out of milk.
Forgive your enemies - it messes with their heads
always insulting me thank u for u help :laugh:
-
I'll do it in a 1/3 of a line at 640x480. If you want to beat that, you'll have to "name that tune"!
A guide to posting questions on CodeProject[^]
Dave KreskowiakThe current one playing is Lennon's version of Stand by Me, but I sing it I'll clear the room.
I wasn't, now I am, then I won't be anymore.
-
Hi everybody, I wanna have the smallest code to conver a double to a string without the point of digits Exple: 12.010 --->1201 ty
modified on Friday, March 18, 2011 6:03 AM
Let's say that your Double is double lifeSpan.
string ls = lifeSpan.ToString().Replace(".","");