2011-06-08 18 views
0

我正在爲我們的站點編寫一個日誌記錄系統,它會查看實體的更改以查看它們是否應該記錄。我一直有一個問題,數據庫中的實體版本顯示十進制數字(字符串格式)爲「132.0000」,而當前實體將其作爲「132」而沒有小數位。 有沒有一種方法可以強制它從一箇中刪除「.0000」或將它添加到另一箇中?C#將十進制類型比較爲字符串

回答

1

你可以試試:

if(132 == Convert.ToDecimal("132.0000") 
{ 
    //Do Stuff 
} 

更換132和 「132.0000」 與您相應的值。

另外,如果你想刪除的 「132.0000」 小數部分,你可以這樣做:

string dec = "132.0000"; 

dec = dec.Substring(0,dec.IndexOf(".")); 
0

如果你總是想要刪除小數,爲什麼不把這個對象轉換爲一個int然後創建一個字符串呢?

+0

什麼你的意思是「分數」,「decimal」是一個C#數據類型 – 2011-06-08 14:25:13

2

嗯,只需將數據庫中的值解析爲小數,並將其與您已有的小數進行比較?

1

將條目轉換回十進制,我會說。

0

如果所有的比較都是數值,你必須找到兩者的共同點。在你的文章中,你已經提供了答案。您需要一個整數,而不是浮點數。將這兩個字符串轉換爲其中一個整型並進行比較。

-1

您可以使用格式化字符串:F4 xxx.ToString( 「F4」)

+0

不,一般來說,「將所有事情轉換爲比較字符串的學校」是錯誤的,例如如果使用浮點的話,如果不仔細的話,你會在字符串轉換中丟失信息。 – 2011-06-08 21:26:48

相關問題