對decimal 類型的數據進行獲取調整


Decimal為SQL Server、MySql等數據庫的一種數據類型,不屬於浮點數類型,可以在定義時划定整數部分以及小數部分的位數。

好處:使用精確小數類型不僅能夠保證數據計算更為精確,還可以節省儲存空間

在C#中 decimal 表示128 位的數據類型。與double類型相比有更高的精度和更小的類型

百分比使用 decimal(4,2)   就可以

“4” 指的是整數部分加小數部分的總長度,也即插入的數字整數部分不能超過“10-2”位,否則不能成功插入,會報超出范圍的錯誤。

“2”表示小數部分的位數,如果插入的值未指定小數部分或者小數部分不足兩位則會自動補到2位小數,若插入的值小數部分超過了2為則會發生截斷,截取前2位小數。

 

這使  .net

 

注意:在前台輸入的是文本,而在數據庫中保存的是 decimal 類型 ,所以要轉換一下

 代碼

<td width="20%" align="right" bgcolor="#F5F5F5">請假時長:</td>
<td align="left" bgcolor="#FFFFFF" width="30%">
<asp:TextBox MaxLength="9"  ID="tbLeaveTime" runat="server"></asp:TextBox>
</td>

 

        if (this.tbLeaveTime.Text.Trim() == string.Empty)
        {
            mdkaoqinginfo.LeaveTime = 0;
        }
        else
        {
            mdkaoqinginfo.LeaveTime = Convert.ToDecimal(this.tbLeaveTime.Text);//請假時長
        }
        

 

 

2、對獲取decimal 類型的數字,保留小數點后一位,及使是6.9999    ,需要的是6.9

這就需要將其轉換為字符串,通過截取之后獲取的值在轉換為  decimal 類型

比如:在一個無返回值得的方法中傳遞一個 decimal 類型的參數  testd1

  //將decimal 類型的數字轉換為 string類型,要是直接去 小數點后一位  會自動進行四舍五入所以,TOString 的時候要注意

  string s = testd1.ToString("0.00000");

  // 對字符串進行截取獲取小數點后一位

  string ss = s.Substring(0, s.IndexOf(".") + 2);

   //在將其轉換為數字

  testd1= Convert.ToDecimal(ss);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM