1.不要小数点int i; int j; int n = i/j; i/j本身就已经是int2.只要两位小数点 我想可以用字符串处理方法实现,但是感觉没有这么做的。肯定还有更好的方法的!期待高手现身!呵呵。。
Convert.ToSingle((i/j).ToString("#.##"))
var d = 3.1415926; d = Math.round(d*100) / 100
Convert.ToSingle((i/j).ToString("#.##")) 是正确的!
/// <summary> /// Values Must in the range. While Values out of range the returns are zero /// </summary> /// <param name="sourceText">sourceText</param> /// <param name="numberPoint">numberPoint</param> /// <param name="decimalPoint">decimalPoint</param> /// <returns></returns> //Comma Separated Values public static string CommaSeparatedValues(string sourceText, int numberPoint, int decimalPoint) { string retValue = ""; double d; if ( decimalPoint < 0 ) { retValue = "0"; } else { //Check Number if ( Double.TryParse(sourceText, System.Globalization.NumberStyles.Any, System.Globalization.NumberFormatInfo.InvariantInfo, out d) ) { retValue = String.Format("{0:n" + decimalPoint.ToString() + "}", d);
int j;
int n = i/j;
i/j本身就已经是int2.只要两位小数点
我想可以用字符串处理方法实现,但是感觉没有这么做的。肯定还有更好的方法的!期待高手现身!呵呵。。
d = Math.round(d*100) / 100
是正确的!
/// Values Must in the range. While Values out of range the returns are zero
/// </summary>
/// <param name="sourceText">sourceText</param>
/// <param name="numberPoint">numberPoint</param>
/// <param name="decimalPoint">decimalPoint</param>
/// <returns></returns>
//Comma Separated Values
public static string CommaSeparatedValues(string sourceText, int numberPoint, int decimalPoint)
{
string retValue = "";
double d; if ( decimalPoint < 0 )
{
retValue = "0";
}
else
{
//Check Number
if ( Double.TryParse(sourceText, System.Globalization.NumberStyles.Any, System.Globalization.NumberFormatInfo.InvariantInfo, out d) )
{
retValue = String.Format("{0:n" + decimalPoint.ToString() + "}", d);
//Check Value About decimalPoint
string checkValue = retValue.Replace(",", ""); if ( decimalPoint > 0 )
{
if ( checkValue.IndexOf('.') > numberPoint )
{
retValue = String.Format("{0:n" + decimalPoint.ToString() + "}", 0);
}
}
else
{
if ( checkValue.Length > numberPoint )
{
retValue = String.Format("{0:n" + decimalPoint.ToString() + "}", 0);
}
}
}
else
{
retValue = String.Format("{0:n" + decimalPoint.ToString() + "}", 0);
}
} //Result
return retValue;
}
NumberFormatInfo nfi = new CultureInfo("en-US",false);
nfi.NumberDecimalDigits = 2;//小数位数x.ToString(nfi);此方法可以所有结果都保留指定小数位数,例如12的结果为12.00,另外两种方法不能有这种效果:
Math.Round()和x.ToString("#.##")
NumberFormatInfo nfi = new CultureInfo("en-US",false).NumberFormat;