Re: [問題] C# 如何取得 double 型態的小數位數?

看板Programming作者 (發呆)時間16年前 (2008/05/10 00:48), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串8/9 (看更多)
以上恕刪~~ ※ 引述《xam (聽說)》之銘言: : 一開始還有 double x = getDouble() : 但是 double getDouble(); 不可能會有時候回傳 51.0 , 有時候回傳 51.00 : 我猜應該是要傳字串形式的浮點數 : 如果這樣的話只要判斷字串長度跟小數點的位置就好了 : 如果不是的話, 那就.... 謝謝大大的幫忙,我想也許是我表達清楚的不夠清楚,不好意思。 實際上是這樣子的,目前我使用了一個元件 (元件名稱:SpreadSheetGear 是一個模擬 EXCEL 的元件,是客戶要求的) 我在真正的 EXCEL 上寫了 VBA 的自定函式,但是因為該元件的限制沒辦法直接去 讀取 EXCEL的 VBA並傳回值,所以只能在 C# 上寫一個同樣名稱的函式取代。 不過 EXCEL VBA 的行為和 C# 的確還是有差別~~ 比方說,我之前寫了一個 VBA 自訂函式﹙但類似的函式有幾十種,規則也都不同﹚ 每個規則的小位數會隨著數字大小改變 ﹙規則1: <1 時 顯示固定為小數5位, <5 時 顯示固定為小數4位,<10時....﹚ ﹙規則2: <3 時 顯示固定為小數5位, <8 時 顯示固定為小數4位,<13時....﹚ 以上的規則大約有數十種,每個都不同~~ 我只是很單純的不想再用 C# 去重寫一堆VBA的函式﹙否則未來程式的維護會很麻煩﹚ 所以想想看有沒有不用重寫 Code的方式。 結果讀到 EXCEL 傳回 51.0時,真正的 EXCEL 就顯示 51.0,反而是在模擬的元件 上顯示51,感覺就會比較怪。 後來因為趕著交給客戶,還是花了幾個鐘頭將 VBA 的程式重新轉成了 C# Code了。 不過規則有80幾條,以後的維護就... :p﹚ ﹙Sorry, 因為重寫 Code 太麻煩了,所以問了這個讓人覺得比較龜毛的問題 >.< ﹚ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.67.39.218
文章代碼(AID): #18981CIj (Programming)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文
完整討論串 (本文為第 8 之 9 篇):
文章代碼(AID): #18981CIj (Programming)