格式值结果在文本框中。 580至0.58E

时间:2015-02-27 17:53:23

标签: c# textbox numbers format add

如何将我的结果格式化为textbox4中的580到0.58E?我找不到解决方案。

  private void button1_Click(object sender, EventArgs e)
    {
        double c, moc, dlugosc, koszt;
        c = Convert.ToDouble(textBox1.Text);
        moc = Convert.ToDouble(textBox2.Text);
        dlugosc = Convert.ToDouble(textBox3.Text);
        koszt= c * moc * dlugosc;
        textBox4.Text = Convert.ToString(koszt);
    }

3 个答案:

答案 0 :(得分:1)

您可以使用: textBox4.Text = (koszt / 1000).ToString() + "E" 这是最简单的方法。

如果要将其格式化为货币,则应使用:textBox4.Text = koszt.ToString("C")textBox4.Text = (koszt / 1000).ToString("C"),这将添加特定于货币的信息。 (我认为这就是你想要的。)

不知道你的所有价值观是什么意思(因为他们不是英国人)我无法进一步推断答案。

修改:请参阅:https://msdn.microsoft.com/en-us/library/dwhawy9k%28v=vs.110%29.aspx

答案 1 :(得分:0)

您只需要将double替换为字符串并在末尾添加“E”。

textBox4.Text = (koszt/1000).ToString() + "E";

答案 2 :(得分:0)

.NET Framework提供了广泛的格式支持。如下所示:

double x = 1234.5678;
Console.WriteLine (x.ToString());             // 1234,5678
Console.WriteLine (x.ToString("E"));          // 1,234568E+003
Console.WriteLine (x.ToString("E2"));         // 1,23E+003
Console.WriteLine (x.ToString("e2"));         // 1,23e+003
Console.WriteLine (x.ToString("F"));          // 1234,57
Console.WriteLine (x.ToString("##.######"));  // 1234,5678
Console.WriteLine (x.ToString("00.000000"));  // 1234,567800
Console.WriteLine (x.ToString("######.##"));  // 1234,57
Console.WriteLine (x.ToString("000000.000")); // 001234,568

但请记住"#。#"零的格式为空字符串或"#。0"它就像" .0" 希望它有所帮助!