将字符串0.00增加x%

时间:2015-06-18 15:25:29

标签: c# string

我需要增加字符串,如“0.3332 USD',' 12.5334 USD',' 6.2222 USD'按x%,如何将这些字符串转换为数字格式xxx.xx示例' 0.33',' 12.53',' 6.22'

我尝试了这个,但它的worng方法      String cmprice = result.Substring(0,x);

2 个答案:

答案 0 :(得分:2)

您可以将decimal.TryParse与正确的NumberFormatInfo

一起使用
string dollars = "0.3332 USD";
decimal price;
var nfi = (NumberFormatInfo)NumberFormatInfo.InvariantInfo.Clone();
nfi.CurrencySymbol = "USD";
bool validFormat = decimal.TryParse(dollars, NumberStyles.Currency, nfi, out price);
if (validFormat)
{ 
    // apply your percent logic, f.e.:
    decimal newPrice = price + (price * 0.15m); // + 15%  
}

答案 1 :(得分:0)

如果你可以保证字符串总是以“USD”结尾,你可以创建一个子字符串,它是完整字符串的四个字符,然后解析它。

String cmprice = result.Substring(0, result.Length - 4);
decimal parsedResult;
decimal.TryParse(cmprice, out parsedResult);