2011-07-28 70 views
-4

我使用文本框的值一樣1455.23,使用圓形功能我輸出0000145523但客戶不能進入像1234浮點值我的輸出000請給我建議 我的代碼是format.cs如何在asp.net中使用圓形數學函數?

public bool formatAmount(float flAmount, out string strOutput) 
{ 
    bool bval = false; 
    float rounded = (float)Math.Round(flAmount, 2); 
    if(rounded!=null) 
    { 
    flAmount = flAmount * 100; 
    strOutput = Convert.ToString(flAmount); 
    bVal = true; 
    } 

    return bVal; 
} 

在我的asp頁面這樣的代碼

string ods; 
float a = Convert.Todecimal(txtSSA.Text); 
string sss = oclsUtility.formatAmount(a, out ods); 
+0

用戶輸入1234時應該輸出什麼內容? –

+0

什麼問題? – FishBasketGordo

+0

@hmk:請提供輸入字符串和所需輸出格式的示例。 –

回答

0

如果我理解你,你需要保持領先的0,如果用戶輸入是浮動,如果不刪除它們。你可以試試這個:

int number; 
bool result = Int32.TryParse(rounded, out number); 
if (result) 
{ 
    // Your number will contain the number with no leading 0 
} 
else 
{ 
    // Then you have a float. 
} 
1

我假設你想忽略100部分的乘法,以防小數值不存在。

所以1234在你的情況基本上是1234.00,你需要避免000

float flAmount = 15F; 
float rounded = (float)Math.Round(flAmount, 2); 
double fractionalval = (rounded - Math.Floor(rounded)) * 100; 
if(fractionalval > 0) 
    flAmount = flAmount * 100; 

在此之後我相信其他可能的工作,並填充它以10長度的字符串。

如果有小數部分,這將跳過乘法,希望這是您需要的其他信息,請編輯其他信息。