본문 바로가기
개발/ASP.NET

정수의 N위치에서 반올림

by ispie 2019. 1. 16.
/// <summary>
/// 정수의 N위치에서 반올림
/// 엑셀파일과 같은 반올림을 할 경우엔 MidpointRounding.AwayFromZero를 이용
/// ex) GetExcelRound(13405, 1) // return 13410
/// ex) GetExcelRound(13405, 2) // return 13400
/// </summary>
/// <param name="value">
/// <param name="digit">
/// <returns></returns>
public static double GetExcelRound(double value, int digit)
{
    var val1 = double.Parse((0.01 * Math.Pow(0.1, digit - 1)).ToString(), System.Globalization.NumberStyles.Float);
    var val2 = 100 * Math.Pow(10, digit - 1);

    return Math.Round(value * val1, 1, MidpointRounding.AwayFromZero) * val2;
}

댓글