我有一些字符串,例如:
1.5555555555555
2.3421354325435354545
4.509019292
我想将它们格式化为以下字符串:
1.5555
2.3421
4.5090
我尝试使用C#的String.Format方法,但我无法正确地使用它。
请问有人可以给我正确的C#语句来完成这个任务吗?
谢谢。
我有一些字符串,例如:
1.5555555555555
2.3421354325435354545
4.509019292
我想将它们格式化为以下字符串:
1.5555
2.3421
4.5090
我尝试使用C#的String.Format方法,但我无法正确地使用它。
请问有人可以给我正确的C#语句来完成这个任务吗?
谢谢。
不清楚您是否总是处理数字值。如果要避免将字符串解析为数字,可以尝试以下方法:
public static string TrimTo(string str, int maxLength)
{
if (str.Length <= maxLength)
{
return str;
}
return str.Substring(0, maxLength);
}
如果提供的字符串超过六个字符,此代码将把其剪切为六个字符。这看起来是您想要的,但是(正如Kees所指出的),对于像“1234567.890”这样的字符串,会产生意外结果。
在这里,条件子句很必要,因为如果第二个索引超出了字符串范围(换句话说,如果字符串长度小于maxLength
),则String.Substring
会报错。
(如果您已经尝试过C# 3.0的扩展方法,您可能会发现,稍微修改一下上面的代码就可以变成一个绝佳的机会:string trimmed = s.TrimTo(10);
)
String.Format("{0:0.0000}", double.Parse("1.55555555555555"))