亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C#中Decimal類型截取保留N位小數(shù)并且不進(jìn)行四舍五入操作

 更新時(shí)間:2015年06月17日 09:59:53   投稿:junjie  
這篇文章主要介紹了C#中Decimal類型截取保留N位小數(shù)并且不進(jìn)行四舍五入操作,本文給出需求說明和實(shí)現(xiàn)代碼,需要的朋友可以參考下

一、問題描述

開發(fā)中,需要使Decimal類型數(shù)據(jù)保留小數(shù)點(diǎn)后的兩位小數(shù)且不需要進(jìn)行四舍五入操作,即直接截取小數(shù)點(diǎn)后面的兩位小數(shù)即可。例如:1.245M --> 1.24,而不是1.25

使用Decimal.Round()方法可以實(shí)現(xiàn)保留Decimal類型數(shù)據(jù)小數(shù)點(diǎn)后的若干位小數(shù),但是該方法會(huì)進(jìn)行四舍五入操作,而不是直接截取。所以,該方法不可取,在網(wǎng)上搜尋一番也沒有找到合適的方法,便自己實(shí)現(xiàn)了一個(gè)截取Decimal類型數(shù)據(jù)小數(shù)點(diǎn)后若干位的方法。

二、詳細(xì)的實(shí)現(xiàn)代碼

using System;
namespace CutDecimal
{
  public static class DecimalHelper
  {
    public static decimal CutDecimalWithN(decimal d, int n)
    {
      string strDecimal = d.ToString();
      int index = strDecimal.IndexOf(".");
      if (index == -1 || strDecimal.Length < index + n + 1)
      {
        strDecimal = string.Format("{0:F" + n + "}", d);
      }
      else
      {
        int length = index;
        if(n != 0)
        {
          length = index + n + 1;
        }
        strDecimal = strDecimal.Substring(0, length);
      }
      return Decimal.Parse(strDecimal);
    }
  }
}

三、測試代碼及結(jié)果

static void Main(string[] args)
{
  decimal d = 1.23456789M;
  for (int i = 0; i <= 10; i++)
  {
    Console.WriteLine("{0}", DecimalHelper.CutDecimalWithN(d, i));
  }
  for (int i = 0; i <= 10; i++)
  {
    Console.WriteLine("{0}", Decimal.Round(d, i));
  }
}

測試代碼中,不僅給出了本文實(shí)現(xiàn)方法的測試代碼,還給出了Decimal.Round()方法的測試代碼,最終的運(yùn)行效果如下圖所示。

圖1 運(yùn)行結(jié)果

大伙兒,能看出區(qū)別吧?

相關(guān)文章

  • Unity3d實(shí)現(xiàn)跑馬燈廣播效果

    Unity3d實(shí)現(xiàn)跑馬燈廣播效果

    這篇文章主要為大家詳細(xì)介紹了Unity3d實(shí)現(xiàn)跑馬燈廣播效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • KMP算法的C#實(shí)現(xiàn)方法

    KMP算法的C#實(shí)現(xiàn)方法

    這篇文章主要介紹了KMP算法的C#實(shí)現(xiàn)方法,代碼簡潔實(shí)用,需要的朋友可以參考下
    2014-09-09
  • C#使用CefSharp自定義緩存實(shí)現(xiàn)

    C#使用CefSharp自定義緩存實(shí)現(xiàn)

    本文介紹了如何使用C#和CefSharp自定義緩存實(shí)現(xiàn)減少Web應(yīng)用程序的網(wǎng)絡(luò)請求,提高應(yīng)用程序性能。首先,本文講解了CefSharp的基本知識和使用方法。然后,詳細(xì)闡述了在CefSharp中實(shí)現(xiàn)自定義緩存的步驟和技巧。最后,通過實(shí)例演示了如何使用自定義緩存功能獲取并展示網(wǎng)頁數(shù)據(jù)
    2023-04-04
  • 基于C#實(shí)現(xiàn)屏幕桌面截圖

    基于C#實(shí)現(xiàn)屏幕桌面截圖

    這篇文章主要為大家詳細(xì)介紹了如何利用C#實(shí)現(xiàn)屏幕桌面截圖以及左上角區(qū)域截圖功能,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)C#有一定的幫助,感興趣的小伙伴可以了解一下
    2022-12-12
  • c#操作json示例分享

    c#操作json示例分享

    這篇文章主要介紹了c#操作json示例,需要的朋友可以參考下
    2014-03-03
  • C#泛型集合類型實(shí)現(xiàn)添加和遍歷

    C#泛型集合類型實(shí)現(xiàn)添加和遍歷

    這篇文章介紹了C#泛型集合類型實(shí)現(xiàn)添加和遍歷的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-08-08
  • C#后臺(tái)創(chuàng)建控件并獲取值的方法

    C#后臺(tái)創(chuàng)建控件并獲取值的方法

    這篇文章主要介紹了C#后臺(tái)創(chuàng)建控件并獲取值的方法,實(shí)例講述了前臺(tái)與后臺(tái)的具體實(shí)現(xiàn)方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-01-01
  • C#實(shí)現(xiàn)圍棋游戲

    C#實(shí)現(xiàn)圍棋游戲

    這篇文章主要為大家詳細(xì)介紹了C#實(shí)現(xiàn)圍棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • 淺談C#中簡單的異常引發(fā)與處理操作

    淺談C#中簡單的異常引發(fā)與處理操作

    這篇文章主要介紹了C#中簡單的異常引發(fā)與處理操作,講到了Exception類和try...catch及throw語句的基本使用,需要的朋友可以參考下
    2016-02-02
  • C#調(diào)用AForge實(shí)現(xiàn)攝像頭錄像的示例代碼

    C#調(diào)用AForge實(shí)現(xiàn)攝像頭錄像的示例代碼

    這篇文章主要介紹了C#調(diào)用AForge實(shí)現(xiàn)攝像頭錄像的示例代碼,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2017-09-09

最新評論