How do I convert the string "39.9983%" into "39%" in C#?
I don't want to do any rounding,开发者_开发知识库 straight up, "39%"
.
So "9.99%"
should become "9%"
.
I hope this will work.
string str = "39.999%";
string[] Output = str.Split('.');
Output[0] will have your Answer.
Thanks
string myPercentage = "48.8983%";
string newString = myPercentage.Replace("%","");
int newNumber = (int)Math.Truncate(Double.Parse(newString));
Console.WriteLine(newNumber + "%");
There maybe hundred ways of doing this and this is just one :)
Probably a Regex. I'm no master of regular expressions, I generally avoid them like the plague, but this seems to work.
string num = "39.988%";
string newNum = Regex.Replace(num, @"\.([0-9]+)%", "%");
One way to do it:
"39.999%".Split(new char[] { '.' })[0] + "%";
int.Parse("39.999%".Split('.')[0])
Doing this gives you a nice int that you can work with as you see fit. You can stick a % sign on the end with whatever string concatenation floats your boat.
Now we have two questions asking the same thing..
Heres my crack at it.
"39.9983%".Split('.')[0] + "%";
Console.WriteLine("{0}%", (int)39.9983);
I'm guessing you want a string returned? Probably the laziest way to do it:
string mynum = "39.999%" mynum = mynum.substring(0, mynum.IndexOf('.')); mynum += "%";
To get an int, you could cast the result of line 2.
精彩评论