11

こんにちは、私は ac# の初心者です。このコードの値を 2 倍/丸めた 10 進数に変換する方法を誰かが丁寧に教えてくれます。

DataTable dtValues = new DataTable("GetValues");

strValueNumber = ValueNumber[0].ToString();
dtGetValues = SQLMethods.GetValues(strValueNumber);

total = 0;

for (int i = 0; i < dtValues.Rows.Count; i++)
{
    total1 = total1 + Convert.ToInt32(dtGetValues.Rows[i]["total_1"]);                  
    total2 = total2 + Convert.ToDouble(dtGetValues.Rows[i]["total_2l"]) * .45; 

    tbtotal1.Text = total1.ToString();
    tbtotal2.Text = total2.ToString(); 
}
}               
catch (Exception ex)
{
    MessageBox.Show("Error in returning selected Values. " +
                    "Processed with error:" + ex.Message);
}
}
4

4 に答える 4

19

使用するMath.Round

Math.Round(mydoublevalue, 2);

あなたのコードで

tbtotal2.Text = Math.Round(total2, 2).ToString(); 
于 2012-06-26T17:47:01.777 に答える
5

文字列として表示するために値を丸めたい場合は、String.Formatも使用できます。

tbtotal1.Text = String.Format("{0:0.##}", total1);

テキスト "{0:0.##}" は、どのようにフォーマットするかを説明しています。# は末尾のゼロを含めないことを示します (たとえば、1.2 は文字列 "1.2" のままです)。代わりに "{0:0.00}" を実行すると、何があっても小数点以下 2 桁が含まれるため、2 倍の 1.2 は "1.20" になります。 "。

于 2012-06-26T17:54:02.143 に答える
1

このようにしてください。

 tbtotal1.Text = Math.Round(double.Parse(total1.ToString()), 2).ToString();
 tbtotal2.Text = Math.Round(double.Parse(total2.ToString()), 2).ToString(); 
于 2012-06-26T17:49:25.877 に答える