将指数值的字符串转换为十进制值的字符串

时间:2018-01-10 11:39:58

标签: vb.net

我想将指数值字符串(值连续存储在数据网格视图中)转换为十进制值字符串

    For Each waveform As AnalogWaveform(Of T) In waveforms

        scaledDataGridView.Rows(rowIndex).Cells(columnIndex).Value = scaledRecords(columnIndex - 1)(rowIndex - lastCount).ToString("E")
        columnIndex += 1
    Next

    If rowIndex Mod 100 = 0 Then
        Application.DoEvents()
    End If

Next
Threading.Thread.Sleep(500)
TextBox1.Text = scaledDataGridView.Rows(rowIndex).Cells(columnIndex).Value.ToString("D")

1 个答案:

答案 0 :(得分:0)

我将此更改为:

TextBox1.Text = scaledDataGridView.Rows(rowIndex).Cells(columnIndex).Value.ToString("D")

Dim dec as Double = Convert.ToDouble(scaledDataGridView.Rows(rowIndex).Cells(columnIndex).Value)
TextBox1.Text = dec.ToString("G17")

原因是您需要在完成任何格式化之前转换回数字。在您的情况下,它尝试格式化格式为D的字符串。

这将最多约17个地方,否则它会有所不同。

此处有更多信息:https://docs.microsoft.com/en-us/dotnet/standard/base-types/standard-numeric-format-strings#GFormatString