将字符串 0.00 增加 x %

本文关键字:增加 字符串 | 更新日期: 2023-09-27 17:57:02

>我需要将"0.3332 美元"、"12.5334 美元"、"6.2222 美元"等字符串增加 x 个百分点,如何将这些字符串转换为数字格式 xxx.xx 示例"0.33"、"12.53"、"6.22"

我试过这个,但它的方法破旧了 字符串 cmprice = 结果。子字符串(0, x);

将字符串 0.00 增加 x %

您可以将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%  
}

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

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